C語(yǔ)言程序設(shè)計(jì)教程與實(shí)驗(yàn)第二上實(shí)用教案_第1頁(yè)
C語(yǔ)言程序設(shè)計(jì)教程與實(shí)驗(yàn)第二上實(shí)用教案_第2頁(yè)
C語(yǔ)言程序設(shè)計(jì)教程與實(shí)驗(yàn)第二上實(shí)用教案_第3頁(yè)
C語(yǔ)言程序設(shè)計(jì)教程與實(shí)驗(yàn)第二上實(shí)用教案_第4頁(yè)
C語(yǔ)言程序設(shè)計(jì)教程與實(shí)驗(yàn)第二上實(shí)用教案_第5頁(yè)
已閱讀5頁(yè),還剩202頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、 C+ C+發(fā)展史簡(jiǎn)介發(fā)展史簡(jiǎn)介 1.2 1.2 程序設(shè)計(jì)概述程序設(shè)計(jì)概述 基本語(yǔ)法成份基本語(yǔ)法成份 1.4 1.4 一個(gè)簡(jiǎn)單的一個(gè)簡(jiǎn)單的C+C+程序程序 附錄附錄(fl)A(fl)A:程序的調(diào)試:程序的調(diào)試和運(yùn)行和運(yùn)行1.1.程序設(shè)計(jì)的發(fā)展歷程程序設(shè)計(jì)的發(fā)展歷程(lchng)2.(lchng)2.結(jié)構(gòu)化程序設(shè)計(jì)結(jié)構(gòu)化程序設(shè)計(jì) 3. 3.面向?qū)ο蟪绦蛎嫦驅(qū)ο蟪绦蛟O(shè)計(jì)設(shè)計(jì)第1頁(yè)/共206頁(yè)第一頁(yè),共207頁(yè)。 C+ C+發(fā)展史簡(jiǎn)介發(fā)展史簡(jiǎn)介 1.2 1.2 程序程序(chngx)(chngx)設(shè)計(jì)概述設(shè)計(jì)概述 基本語(yǔ)法成份基本語(yǔ)法成份 1.4 1.4 一個(gè)簡(jiǎn)單的一個(gè)簡(jiǎn)單的C+C+程序程序(chn

2、gx) (chngx) 附錄附錄A A:程序:程序(chngx)(chngx)的調(diào)的調(diào)試和運(yùn)行試和運(yùn)行1.1.程序的編輯、編程序的編輯、編譯、運(yùn)行和調(diào)試譯、運(yùn)行和調(diào)試 2.Visual C+2.Visual C+集成集成(j chn(j chn) )開(kāi)開(kāi)發(fā)環(huán)境發(fā)環(huán)境第2頁(yè)/共206頁(yè)第二頁(yè),共207頁(yè)。第3頁(yè)/共206頁(yè)第三頁(yè),共207頁(yè)。第4頁(yè)/共206頁(yè)第四頁(yè),共207頁(yè)。 程序是計(jì)算機(jī)完成某一任務(wù)的指令或語(yǔ)句的有序集合( (由某種語(yǔ)言來(lái)完成) ),由數(shù)據(jù)和處理數(shù)據(jù)的操作組成的。數(shù)據(jù)是被操作的對(duì)象,操作的目的是對(duì)數(shù)據(jù)進(jìn)行加工處理,以得到期望的結(jié)果。操作步驟也就是算法,即求解問(wèn)題(wnt)(

3、wnt)的方法和步驟。我們編寫(xiě)程序的過(guò)程就是程序設(shè)計(jì)。 程序設(shè)計(jì)(chn x sh j)(chn x sh j)的發(fā)展歷程實(shí)質(zhì)上是計(jì)算機(jī)語(yǔ)言的發(fā)展歷程。1.1.機(jī)器語(yǔ)言: :由一條條二進(jìn)制代碼組成( (面向機(jī)器).).2.2.匯編語(yǔ)言: :由一些助記符號(hào)代替二進(jìn)制代碼( (同上).).3.3.高級(jí)語(yǔ)言: :由一些命令或語(yǔ)句組成( (面向過(guò)程).).4.4.面向?qū)ο笳Z(yǔ)言: :是一種比面向過(guò)程更高級(jí)的高級(jí)語(yǔ)言. .第5頁(yè)/共206頁(yè)第五頁(yè),共207頁(yè)。 50 50年代的程序都是用指令代碼年代的程序都是用指令代碼(di m)(di m)或匯編語(yǔ)言編寫(xiě)的,或匯編語(yǔ)言編寫(xiě)的,這種程序的設(shè)計(jì)相當(dāng)麻煩,這種

4、局面嚴(yán)重影響了計(jì)算機(jī)的普及應(yīng)用。這種程序的設(shè)計(jì)相當(dāng)麻煩,這種局面嚴(yán)重影響了計(jì)算機(jī)的普及應(yīng)用。 60 60年代高級(jí)語(yǔ)言的出現(xiàn)大大簡(jiǎn)化了程序設(shè)計(jì),縮短了解題周期,年代高級(jí)語(yǔ)言的出現(xiàn)大大簡(jiǎn)化了程序設(shè)計(jì),縮短了解題周期,因此顯示出強(qiáng)大的生命力。但就整個(gè)程序設(shè)計(jì)方法而言,并無(wú)實(shí)質(zhì)因此顯示出強(qiáng)大的生命力。但就整個(gè)程序設(shè)計(jì)方法而言,并無(wú)實(shí)質(zhì)性的改進(jìn)。性的改進(jìn)。 自自6060年代末到年代末到7070年代初,出現(xiàn)了大型軟件系統(tǒng),如操作系統(tǒng)、年代初,出現(xiàn)了大型軟件系統(tǒng),如操作系統(tǒng)、數(shù)據(jù)庫(kù),這給程序設(shè)計(jì)帶來(lái)了新的問(wèn)題。大型系統(tǒng)的研制需要花費(fèi)數(shù)據(jù)庫(kù),這給程序設(shè)計(jì)帶來(lái)了新的問(wèn)題。大型系統(tǒng)的研制需要花費(fèi)大量的資金和人力,

5、可是研制出來(lái)的產(chǎn)品卻可靠性差,錯(cuò)誤多,且大量的資金和人力,可是研制出來(lái)的產(chǎn)品卻可靠性差,錯(cuò)誤多,且不易維護(hù)和修改。當(dāng)時(shí),人們稱(chēng)這種現(xiàn)象為不易維護(hù)和修改。當(dāng)時(shí),人們稱(chēng)這種現(xiàn)象為“軟件危機(jī)軟件危機(jī)”。 第6頁(yè)/共206頁(yè)第六頁(yè),共207頁(yè)。 為了克服為了克服6060年代出現(xiàn)的軟件危機(jī),年代出現(xiàn)的軟件危機(jī),19681968年北約組織提出年北約組織提出“軟件工程軟件工程”的概念。的概念。19691969年,首先提出了結(jié)構(gòu)化程序設(shè)計(jì)年,首先提出了結(jié)構(gòu)化程序設(shè)計(jì)的概念,他強(qiáng)調(diào)了從程序結(jié)構(gòu)和風(fēng)格上來(lái)研究的概念,他強(qiáng)調(diào)了從程序結(jié)構(gòu)和風(fēng)格上來(lái)研究(ynji)(ynji)程程序設(shè)計(jì)。用結(jié)構(gòu)化程序設(shè)計(jì)的方法編寫(xiě)出來(lái)

6、的程序不僅結(jié)構(gòu)序設(shè)計(jì)。用結(jié)構(gòu)化程序設(shè)計(jì)的方法編寫(xiě)出來(lái)的程序不僅結(jié)構(gòu)良好,易寫(xiě)易讀,而且易于證明其正確性。良好,易寫(xiě)易讀,而且易于證明其正確性。 進(jìn)入進(jìn)入8080年代,由于一系列高技術(shù)的研究年代,由于一系列高技術(shù)的研究(ynji)(ynji),迫,迫切要求大型的軟件系統(tǒng)作為支撐。他們所用的數(shù)據(jù)類(lèi)型也超切要求大型的軟件系統(tǒng)作為支撐。他們所用的數(shù)據(jù)類(lèi)型也超出了常規(guī)的結(jié)構(gòu)化數(shù)據(jù)類(lèi)型的范疇,提出對(duì)圖象、聲音、規(guī)出了常規(guī)的結(jié)構(gòu)化數(shù)據(jù)類(lèi)型的范疇,提出對(duì)圖象、聲音、規(guī)則等非結(jié)構(gòu)化信息的管理。由于結(jié)構(gòu)化語(yǔ)言的數(shù)據(jù)類(lèi)型較為則等非結(jié)構(gòu)化信息的管理。由于結(jié)構(gòu)化語(yǔ)言的數(shù)據(jù)類(lèi)型較為簡(jiǎn)單,所以不能勝任對(duì)非結(jié)構(gòu)化數(shù)據(jù)的定義與

7、管理,采用過(guò)簡(jiǎn)單,所以不能勝任對(duì)非結(jié)構(gòu)化數(shù)據(jù)的定義與管理,采用過(guò)程調(diào)用機(jī)制也不夠靈活,獨(dú)立性較差。程調(diào)用機(jī)制也不夠靈活,獨(dú)立性較差。第7頁(yè)/共206頁(yè)第七頁(yè),共207頁(yè)。第8頁(yè)/共206頁(yè)第八頁(yè),共207頁(yè)。1.自頂向下、逐步細(xì)化:結(jié)構(gòu)化程序設(shè)計(jì)的主要思想是功能分解并逐步求精。當(dāng)一些任務(wù)復(fù)雜以至無(wú)法描述時(shí),可以將它拆分為一系列較小的功能部件,直到這些完備的子任務(wù)小到易于理解的程度。這種方法(fngf)叫“自頂向下,逐步細(xì)化”。2.模塊化設(shè)計(jì):在程序設(shè)計(jì)中常采用模塊化設(shè)計(jì)的方法(fngf),尤其是當(dāng)程序比較復(fù)雜時(shí),更有必要。在拿到一個(gè)程序模塊(實(shí)際上是程序模塊的任務(wù)書(shū))以后,根據(jù)程序模塊的功能將

8、它劃分為若干個(gè)子模塊,如果嫌這些子模塊的規(guī)模大,還可以劃分為更小的模塊。這個(gè)過(guò)程采用自頂向下方法(fngf)來(lái)實(shí)現(xiàn)。結(jié)構(gòu)化程序設(shè)計(jì)方法(fngf)可以解決人腦思維能力的局限性和所處理問(wèn)題的復(fù)雜性之間的矛盾。3.結(jié)構(gòu)化編碼:在設(shè)計(jì)好一個(gè)結(jié)構(gòu)化的算法之后,還要善于進(jìn)行結(jié)構(gòu)化編碼。即用高級(jí)語(yǔ)言語(yǔ)句正確地實(shí)現(xiàn)順序、選擇、循環(huán)三種基本結(jié)構(gòu)。第9頁(yè)/共206頁(yè)第九頁(yè),共207頁(yè)。1.3.1 C+1.3.1 C+語(yǔ)言(yyn)(yyn)的字符集 1.3.2 C+1.3.2 C+語(yǔ)言(yyn)(yyn)的標(biāo)識(shí)符1.3.3 C+1.3.3 C+語(yǔ)言(yyn)(yyn)的關(guān)鍵字 1.3.4 C+1.3.4 C+語(yǔ)

9、言(yyn)(yyn)的運(yùn)算符1.3.5 C+1.3.5 C+語(yǔ)言(yyn)(yyn)的分隔符1.3.6 C+1.3.6 C+語(yǔ)言(yyn)(yyn)的空白符第10頁(yè)/共206頁(yè)第十頁(yè),共207頁(yè)。 字符是構(gòu)成程序的原始基礎(chǔ),C+字符集是ASCII字符集的一個(gè)子集(92個(gè))。由下列字符組成(除了$和): 26個(gè)小寫(xiě)字母(a z)和26個(gè)大寫(xiě)字母(A Z): 10 個(gè) 數(shù) 字:0 9 其 他 符 號(hào): (30個(gè)) + - * / = , _ : ; ? ” | ! # % & ( ) 空格 用C+字符集中字符可以構(gòu)造各種( zhn)詞法符號(hào):標(biāo)識(shí)符、關(guān)鍵字、特殊運(yùn)算符、分隔符。 第11頁(yè)

10、/共206頁(yè)第十一頁(yè),共207頁(yè)。 標(biāo)識(shí)符是一個(gè)標(biāo)識(shí)符是一個(gè)(y (y )字符序列,用來(lái)標(biāo)記變量字符序列,用來(lái)標(biāo)記變量名、常量名、函數(shù)名、對(duì)象名和類(lèi)型名等。名、常量名、函數(shù)名、對(duì)象名和類(lèi)型名等。C+C+要求標(biāo)要求標(biāo)識(shí)符必須符合以下語(yǔ)法規(guī)定:識(shí)符必須符合以下語(yǔ)法規(guī)定:(1)(1)組成字符有:組成字符有:AZAZ,azaz,0909或或_(_(下劃線下劃線) )。(2)(2)標(biāo)識(shí)符必須是以字母或下劃線開(kāi)始,后跟其他字符標(biāo)識(shí)符必須是以字母或下劃線開(kāi)始,后跟其他字符組成的字符串。例如:組成的字符串。例如:namename、dayday、NAMENAME、prg_1 prg_1 、a_1a_1、b1b1

11、、double_listdouble_list等都是合法的標(biāo)識(shí)符;而等都是合法的標(biāo)識(shí)符;而2b2b、D$7D$7、name 1name 1、x+yx+y、A1A1則是不合法的標(biāo)識(shí)符。則是不合法的標(biāo)識(shí)符。第12頁(yè)/共206頁(yè)第十二頁(yè),共207頁(yè)。 (3)(3)標(biāo)識(shí)符的長(zhǎng)度可以是任意的,但不同的標(biāo)識(shí)符的長(zhǎng)度可以是任意的,但不同的C+C+編譯器能編譯器能識(shí)別的最大長(zhǎng)度不同,編譯器忽略多余字符,而不認(rèn)識(shí)別的最大長(zhǎng)度不同,編譯器忽略多余字符,而不認(rèn)為是錯(cuò)誤。為是錯(cuò)誤。(4)(4)標(biāo)識(shí)符中大小寫(xiě)字母表示不同的含義,例如:標(biāo)識(shí)符中大小寫(xiě)字母表示不同的含義,例如:TIMETIME、TimeTime、timet

12、ime等標(biāo)識(shí)符在同一程序中使用被視為不同的等標(biāo)識(shí)符在同一程序中使用被視為不同的標(biāo)識(shí)符。標(biāo)識(shí)符。(5)(5)最好不要定義以下劃線打頭的標(biāo)識(shí)符,以免和最好不要定義以下劃線打頭的標(biāo)識(shí)符,以免和C+C+系系統(tǒng) 庫(kù) 中 的 符 號(hào) 沖 突 ; 不 要 在 標(biāo) 識(shí) 符 內(nèi) 部 使 用 連 續(xù)統(tǒng) 庫(kù) 中 的 符 號(hào) 沖 突 ; 不 要 在 標(biāo) 識(shí) 符 內(nèi) 部 使 用 連 續(xù)(linx)(linx)的兩個(gè)下劃線。的兩個(gè)下劃線。(6)(6)標(biāo)識(shí)符取名時(shí)不能與關(guān)鍵字同名標(biāo)識(shí)符取名時(shí)不能與關(guān)鍵字同名, , 也不能與系統(tǒng)預(yù)也不能與系統(tǒng)預(yù)先定義的標(biāo)準(zhǔn)標(biāo)識(shí)符(如標(biāo)準(zhǔn)函數(shù))同名先定義的標(biāo)準(zhǔn)標(biāo)識(shí)符(如標(biāo)準(zhǔn)函數(shù))同名, , 最

13、好能最好能“見(jiàn)名知義見(jiàn)名知義”, ”, 如如maxmax表示最大值,表示最大值,datedate表示日期。以表示日期。以提高程序的可讀性。一般選用相應(yīng)英文單詞或拼音的提高程序的可讀性。一般選用相應(yīng)英文單詞或拼音的縮寫(xiě)形式縮寫(xiě)形式, ,盡量不要使用簡(jiǎn)單代數(shù)符號(hào),如盡量不要使用簡(jiǎn)單代數(shù)符號(hào),如a a,b b,x x,y y等。等。 注意注意: :一般變量名、函數(shù)名和類(lèi)型名用小寫(xiě)字母,符號(hào)一般變量名、函數(shù)名和類(lèi)型名用小寫(xiě)字母,符號(hào)常量用大寫(xiě)字母。常量用大寫(xiě)字母。第13頁(yè)/共206頁(yè)第十三頁(yè),共207頁(yè)。constexterngotoregistersizeoftypedefvolatileboolc

14、atchclassconst_castdeletedynamic_castexplicitfalsefriendreinterpret_castmutablenamespacenewoperatorprivateprotectedpublicinlinestatic_casttemplatethisthrowtruetrytypeidtypenameusingvirtualwchar_t 關(guān)鍵字又稱(chēng)保留字,在程序(chngx)中表示固定的意義,由系統(tǒng)提供,是定義好的單詞,不能重新再被定義,是構(gòu)成C+語(yǔ)言的語(yǔ)法基礎(chǔ)。 第14頁(yè)/共206頁(yè)第十四頁(yè),共207頁(yè)。 用于分隔各個(gè)詞法記號(hào)或程序正文,即

15、是程序中的標(biāo)點(diǎn)符號(hào),不表示任何操作。常用的有: 空格:用作單詞之間的分隔符。 逗號(hào):用作變量之間或?qū)ο笾g的分隔符, 或用作函數(shù)的多個(gè)參數(shù)之間的分隔符。 分號(hào):用作語(yǔ)句(yj)之間的分隔符或結(jié)束符。 花括號(hào):用來(lái)為函數(shù)體、復(fù)合語(yǔ)句(yj)等定界。第15頁(yè)/共206頁(yè)第十五頁(yè),共207頁(yè)。 在程序編譯時(shí)的詞法分析階段將程序正文分解為詞法記號(hào)和空白。空白是空格、制表符(TAB(TAB鍵產(chǎn)生的字符) )、換行符(Enter(Enter鍵所產(chǎn)生的字符) )和注釋的總稱(chēng)??瞻追糜谥甘驹~法記號(hào)的開(kāi)始和結(jié)束位置,但除了這一功能之外,其余的空白將被忽略( (對(duì)程序運(yùn)行不產(chǎn)生任何作用的部分) )。因此,C+C

16、+程序可以不必嚴(yán)格地按行書(shū)寫(xiě),凡是可以出現(xiàn)空格的地方,都可以出現(xiàn)換行。但是盡管如此,我們?cè)跁?shū)寫(xiě)程序時(shí),仍要力求清晰(qngx)(qngx)、易讀。因?yàn)橐粋€(gè)程序不僅要讓機(jī)器執(zhí)行,還要讓人閱讀,同時(shí)便于修改、維護(hù)。注釋是對(duì)程序的注解和說(shuō)明,目的是為了便于程序的閱讀和分析。 第16頁(yè)/共206頁(yè)第十六頁(yè),共207頁(yè)。例1 1 從鍵盤(pán)上輸入兩個(gè)數(shù),求這兩個(gè)數(shù)的最大值( (例1.cpp)1.cpp)#include /#include /編譯預(yù)處理命令int max(int x,int y) /int max(int x,int y) /求兩個(gè)數(shù)的最大值函數(shù) int t; int t; if (xy)

17、t=x; if (xy) t=x; else t=y; else t=y; return t; / return return t; / return語(yǔ)句將t t的值返回(fnhu)(fnhu)給主調(diào)主函數(shù)main( )main( )/ /* *以下是主函數(shù)* */ /void main( ) /void main( ) /主函數(shù) int a,b; / int a,b; /定義兩個(gè)基本整型變量 cout cout請(qǐng)輸入兩個(gè)數(shù):endl;:ab; cinab; int m; int m; m=max(a,b); / m=max(a,b); /調(diào)用求最大值的函數(shù) cout cout最大值=mend

18、l; =mendl; 以以“#”號(hào)開(kāi)頭的行都是編譯預(yù)處理行,號(hào)開(kāi)頭的行都是編譯預(yù)處理行,且在一行中,只能寫(xiě)一行編譯預(yù)處理指令。且在一行中,只能寫(xiě)一行編譯預(yù)處理指令。 為了使程序的結(jié)構(gòu)清晰,一般將為了使程序的結(jié)構(gòu)清晰,一般將及及、等放在一個(gè)源代碼文件中,成為等放在一個(gè)源代碼文件中,成為,其擴(kuò),其擴(kuò)展名為展名為( (或或) )。頭文件可由。頭文件可由提供,用戶(hù)可直接使提供,用戶(hù)可直接使用;也可由用;也可由根據(jù)需要自己編寫(xiě)頭文件。系統(tǒng)提供的根據(jù)需要自己編寫(xiě)頭文件。系統(tǒng)提供的頭文件用頭文件用括起來(lái)如括起來(lái)如,而用戶(hù)自己定義的頭文件用而用戶(hù)自己定義的頭文件用“ ”括起來(lái)。括起來(lái)。 被調(diào)函數(shù)(自定義函數(shù))

19、主調(diào)函數(shù)程序的運(yùn)行結(jié)果: : 請(qǐng)輸入兩個(gè)數(shù)請(qǐng)輸入兩個(gè)數(shù): :5 95 9最大值最大值=9=9定義在各系統(tǒng)頭文件中,如:標(biāo)定義在各系統(tǒng)頭文件中,如:標(biāo)準(zhǔn)數(shù)學(xué)函數(shù)定義在頭文件中,而字符串處理函數(shù)定義準(zhǔn)數(shù)學(xué)函數(shù)定義在頭文件中,而字符串處理函數(shù)定義在頭文件中等。在頭文件中等。 int t; if (xy) t=x; else t=y; return t; 第17頁(yè)/共206頁(yè)第十七頁(yè),共207頁(yè)。 C+ C+中采用如下兩種注釋方法:中采用如下兩種注釋方法:使用使用“/”“/”符號(hào)進(jìn)行注釋?zhuān)簭姆?hào)進(jìn)行注釋?zhuān)簭摹?”“/”符號(hào)后面字符開(kāi)符號(hào)后面字符開(kāi)始直至它所在行結(jié)束,所有字符都為注釋信息始直至它所在行結(jié)

20、束,所有字符都為注釋信息( (適用適用于注釋一行信息于注釋一行信息) )。 使用一對(duì)使用一對(duì)“/“/* *”和和“* */”/”符號(hào)進(jìn)行注釋?zhuān)涸诜?hào)進(jìn)行注釋?zhuān)涸凇?“/* *”和和“* */”/”之間的所有字符都為注釋信息之間的所有字符都為注釋信息( (適用于注釋多適用于注釋多行信息行信息) ) 。說(shuō)明說(shuō)明(shumng)(shumng):在生成執(zhí)行程序時(shí),:在生成執(zhí)行程序時(shí),C+C+忽略注忽略注釋?zhuān)衙恳粋€(gè)注釋都看做是空格。兩種注釋都可以釋?zhuān)衙恳粋€(gè)注釋都看做是空格。兩種注釋都可以放在程序的任一位置。放在程序的任一位置。 第18頁(yè)/共206頁(yè)第十八頁(yè),共207頁(yè)。函數(shù)是構(gòu)成函數(shù)是構(gòu)成C+

21、C+程序設(shè)計(jì)的基本單位。一個(gè)程序設(shè)計(jì)的基本單位。一個(gè)(y (y )C+)C+程序可由一個(gè)程序可由一個(gè)(y (y )main)main函函數(shù)數(shù)( (主函數(shù)主函數(shù)) )和若干個(gè)其他函數(shù)組成,和若干個(gè)其他函數(shù)組成, main main主主函數(shù)是程序的入口,即函數(shù)是程序的入口,即C+C+程序從主函數(shù)開(kāi)始運(yùn)程序從主函數(shù)開(kāi)始運(yùn)行(行(mainmain可位于程序中的任意位置可位于程序中的任意位置) )。C+C+語(yǔ)言區(qū)分大小寫(xiě),例如語(yǔ)言區(qū)分大小寫(xiě),例如IntInt和和intint是不同的是不同的標(biāo)識(shí)符。標(biāo)識(shí)符。mainmain函數(shù)名必須小寫(xiě)。函數(shù)名必須小寫(xiě)。第19頁(yè)/共206頁(yè)第十九頁(yè),共207頁(yè)。第20頁(yè)/

22、共206頁(yè)第二十頁(yè),共207頁(yè)。1.C+1.C+程序的書(shū)寫(xiě)格式比較自由,一般一行寫(xiě)一條語(yǔ)句。程序的書(shū)寫(xiě)格式比較自由,一般一行寫(xiě)一條語(yǔ)句。對(duì)于短語(yǔ)句也可一行寫(xiě)多個(gè),中間對(duì)于短語(yǔ)句也可一行寫(xiě)多個(gè),中間(zhngjin)(zhngjin)用用“;”分隔。對(duì)于長(zhǎng)語(yǔ)句也可將一條語(yǔ)句分寫(xiě)在多行上,分隔。對(duì)于長(zhǎng)語(yǔ)句也可將一條語(yǔ)句分寫(xiě)在多行上,分行原則是不能將一個(gè)單詞分開(kāi),也不要將雙撇號(hào)引用分行原則是不能將一個(gè)單詞分開(kāi),也不要將雙撇號(hào)引用的一個(gè)字符串分開(kāi)。的一個(gè)字符串分開(kāi)。2.2.為了程序書(shū)寫(xiě)得清晰,提高程序的可讀性,一般采用為了程序書(shū)寫(xiě)得清晰,提高程序的可讀性,一般采用縮進(jìn)格式。即同一層次語(yǔ)句要對(duì)齊,不同層

23、次語(yǔ)句要縮縮進(jìn)格式。即同一層次語(yǔ)句要對(duì)齊,不同層次語(yǔ)句要縮進(jìn)若干個(gè)字符進(jìn)若干個(gè)字符(24(24個(gè)個(gè)) )。例如循環(huán)體中的語(yǔ)句和選擇體。例如循環(huán)體中的語(yǔ)句和選擇體中的語(yǔ)句要縮進(jìn)對(duì)齊。中的語(yǔ)句要縮進(jìn)對(duì)齊。 3.3.花括號(hào)的書(shū)寫(xiě)方法較多花括號(hào)的書(shū)寫(xiě)方法較多, , 常用的是每個(gè)花括號(hào)占一行,常用的是每個(gè)花括號(hào)占一行,并與使用花括號(hào)的語(yǔ)句對(duì)齊,花括號(hào)內(nèi)的語(yǔ)句采用縮格并與使用花括號(hào)的語(yǔ)句對(duì)齊,花括號(hào)內(nèi)的語(yǔ)句采用縮格書(shū)寫(xiě)的方式;另有一種形式是花括號(hào)與所括內(nèi)容占一行。書(shū)寫(xiě)的方式;另有一種形式是花括號(hào)與所括內(nèi)容占一行。第21頁(yè)/共206頁(yè)第二十一頁(yè),共207頁(yè)。編輯編譯有錯(cuò)?鏈接運(yùn)行程序結(jié)果正確?保存源程序.c

24、pp編譯報(bào)錯(cuò)編譯通過(guò)目標(biāo)文件.obj運(yùn)行文件.exe否正確結(jié)束鏈接完成鏈接報(bào)錯(cuò)第22頁(yè)/共206頁(yè)第二十二頁(yè),共207頁(yè)。1. VC+1. VC+的啟動(dòng)及其主窗口(chungku)(chungku)簡(jiǎn)介2. VC+2. VC+環(huán)境下程序的編輯、編譯、 運(yùn)行和調(diào)試v新建工程項(xiàng)目新建工程項(xiàng)目v在項(xiàng)目中增加文件在項(xiàng)目中增加文件(wnjin)(wnjin)v從項(xiàng)目中刪除文件從項(xiàng)目中刪除文件(wnjin)(wnjin)v打開(kāi)、關(guān)閉、保存項(xiàng)目打開(kāi)、關(guān)閉、保存項(xiàng)目第23頁(yè)/共206頁(yè)第二十三頁(yè),共207頁(yè)。開(kāi)始開(kāi)始(kish) 程序程序 Microsoft Visual C+第24頁(yè)/共206頁(yè)第二十四頁(yè),

25、共207頁(yè)。工件(gngjin)(gngjin)區(qū)窗口(workspace)(workspace)編輯(binj)(binj)窗口(edit)(edit)輸出(shch)(shch)窗口(output)(output)第25頁(yè)/共206頁(yè)第二十五頁(yè),共207頁(yè)。 基本(jbn)(jbn)數(shù)據(jù)類(lèi)型、 運(yùn)算符與表達(dá)式 數(shù)據(jù)類(lèi)型概述數(shù)據(jù)類(lèi)型概述 常量與變量常量與變量 基本基本(jbn)(jbn)類(lèi)型類(lèi)型 運(yùn)算符和表達(dá)式運(yùn)算符和表達(dá)式 類(lèi)型轉(zhuǎn)換類(lèi)型轉(zhuǎn)換第二章第26頁(yè)/共206頁(yè)第二十六頁(yè),共207頁(yè)。 基本整型(int) 短整型 (short) 整型 長(zhǎng)整型 (long) 無(wú)符號(hào)型(unsigned)

26、 基本類(lèi)型 單精度型(float) 實(shí)型(浮點(diǎn)型) 雙精度型(double) 字符型(char) 擴(kuò)展雙精度型(long double)數(shù)據(jù)類(lèi)型 布爾型(bool) 空類(lèi)型(void) 數(shù)組 指針 構(gòu)造類(lèi)型 結(jié)構(gòu)(jigu)體(struct) 共用體(union) 枚舉(enum) 類(lèi)(class)第27頁(yè)/共206頁(yè)第二十七頁(yè),共207頁(yè)。常 量v C+C+中常量可以是常數(shù)中常量可以是常數(shù)( (值常量值常量) ),也可以是代表固定不變的值的名字,也可以是代表固定不變的值的名字符號(hào)常量。符號(hào)常量。程序程序(chngx)(chngx)中如果想使變量的內(nèi)容自初始化后一直保持不變,可以定義一個(gè)符中如

27、果想使變量的內(nèi)容自初始化后一直保持不變,可以定義一個(gè)符號(hào)常量。其定義形式有:號(hào)常量。其定義形式有:v const const 數(shù)據(jù)類(lèi)型數(shù)據(jù)類(lèi)型 符號(hào)常量名符號(hào)常量名= =初始值初始值; ;v 例如:例如:const double PI=3.1415926; const double PI=3.1415926; #define 符號(hào)符號(hào)(fho)常量名常量名 初始值初始值 例如:例如:#define 第28頁(yè)/共206頁(yè)第二十八頁(yè),共207頁(yè)。變 量 1. 1. 變量變量(binling)(binling)的定義的定義 2. 2. 初始化變量初始化變量(binling)(binling)第29頁(yè)

28、/共206頁(yè)第二十九頁(yè),共207頁(yè)。變量(binling)(binling)的定義第30頁(yè)/共206頁(yè)第三十頁(yè),共207頁(yè)。初始化變量(binling)(binling)或 unsigned short width(5); long width(8), length(12); “函數(shù)表示法” double area, radius(20.0);第31頁(yè)/共206頁(yè)第三十一頁(yè),共207頁(yè)。1.1.整型整型2.2.實(shí)型(浮點(diǎn)型)實(shí)型(浮點(diǎn)型)3.3.字符字符(z f)(z f)型型4.4.布爾類(lèi)型布爾類(lèi)型5.void5.void類(lèi)型類(lèi)型小結(jié)小結(jié)2.3 2.3 基本(jbn)(jbn)類(lèi)型void

29、main( )第32頁(yè)/共206頁(yè)第三十二頁(yè),共207頁(yè)。整 型 1. 1. 整型常量整型常量(chngling)(chngling)的表示的表示 2. 2. 整型變量的分類(lèi)整型變量的分類(lèi)int第33頁(yè)/共206頁(yè)第三十三頁(yè),共207頁(yè)。整型常量(chngling)(chngling)的表示(1)(1)十進(jìn)制整數(shù):以非十進(jìn)制整數(shù):以非0 0開(kāi)頭開(kāi)頭(ki tu)(ki tu)的,由的,由0 0至至9 9數(shù)字、數(shù)字、正負(fù)號(hào)組成的常數(shù),如正負(fù)號(hào)組成的常數(shù),如12341234,-10-10為合法十進(jìn)制整常數(shù),為合法十進(jìn)制整常數(shù),而,而,1.23E+21.23E+2是非法的十進(jìn)制整常數(shù)。是非法的十進(jìn)制

30、整常數(shù)。(2)(2)八進(jìn)制整數(shù):以八進(jìn)制整數(shù):以0 0開(kāi)頭開(kāi)頭(ki tu)(ki tu)的,由的,由0 0至至7 7數(shù)字組成數(shù)字組成的數(shù)字串,如的數(shù)字串,如0123401234,010010為合法八進(jìn)制整常數(shù),而為合法八進(jìn)制整常數(shù),而12341234,028028則是非法的八進(jìn)制整常數(shù)。則是非法的八進(jìn)制整常數(shù)。(3)(3)十六進(jìn)制整數(shù)十六進(jìn)制整數(shù): :以以0 x(0 x(或或0X)0X)開(kāi)頭開(kāi)頭(ki tu)(ki tu)的的, ,由由0 0至至9 9數(shù)字和數(shù)字和a a至至f(f(或或A A至至F)F)字符組成,如字符組成,如0 x100 x10,0 x2f0 x2f,0 xa0 xa為合為

31、合法的十六進(jìn)制整常數(shù),而法的十六進(jìn)制整常數(shù),而1212,0 xgf0 xgf,20H20H是非法的十六進(jìn)是非法的十六進(jìn)制整常數(shù)。制整常數(shù)。第34頁(yè)/共206頁(yè)第三十四頁(yè),共207頁(yè)。課課 堂堂 練練 習(xí)習(xí)v以下以下(yxi)(yxi)選項(xiàng)中可以作為選項(xiàng)中可以作為C/C+C/C+語(yǔ)言合法整數(shù)的語(yǔ)言合法整數(shù)的是是 。v A) 10110B B) 0368 C) 0Xffa D) x2a2 A) 10110B B) 0368 C) 0Xffa D) x2a2第35頁(yè)/共206頁(yè)第三十五頁(yè),共207頁(yè)。整型變量(binling)(binling)的分類(lèi)(1) signed:表示(biosh)有符號(hào)位(

32、可缺省,int型); (2) unsighed:表示(biosh)無(wú)符號(hào)位 (unsigned int型);(3) long:表示(biosh)長(zhǎng)型( long int 型和unsigned long 型);(4) short:表示(biosh)短型( short int 型和unsigned short 型) ;例如: signed int a; 等價(jià)于 int a; unsigned int a; 等價(jià)于 unsigned a; long int a; 等價(jià)于 long a; short int a; 等價(jià)于 short a; 基本整型基本整型intint是在給定機(jī)器上具有一定長(zhǎng)度的整數(shù),

33、通常占用一是在給定機(jī)器上具有一定長(zhǎng)度的整數(shù),通常占用一個(gè)機(jī)器字長(zhǎng),大多數(shù)計(jì)算機(jī)為個(gè)機(jī)器字長(zhǎng),大多數(shù)計(jì)算機(jī)為3232位機(jī),機(jī)器字長(zhǎng)為位機(jī),機(jī)器字長(zhǎng)為4 4個(gè)字節(jié)。個(gè)字節(jié)。long long intint通常也占用通常也占用4 4個(gè)字節(jié),因此個(gè)字節(jié),因此(ync)int(ync)int、long intlong int表示的數(shù)值表示的數(shù)值范圍比較大;范圍比較大;short int short int 占用占用2 2個(gè)字節(jié),因此個(gè)字節(jié),因此(ync)(ync)表示的數(shù)值表示的數(shù)值范圍比較小(如表)。范圍比較小(如表)。 在十進(jìn)制、八進(jìn)制和十六進(jìn)制表示的在十進(jìn)制、八進(jìn)制和十六進(jìn)制表示的中,若數(shù)字串的中

34、,若數(shù)字串的后面加上字母后面加上字母 ( (或或) ),則說(shuō)明該常數(shù)為,則說(shuō)明該常數(shù)為,如,如12L,027l,0 xa1L,0 x9FL。若數(shù)字串的后面加上字母。若數(shù)字串的后面加上字母(或或) ),則說(shuō)明該常,則說(shuō)明該常數(shù)為數(shù)為,如,如5U。第36頁(yè)/共206頁(yè)第三十六頁(yè),共207頁(yè)。實(shí) 型 1. 1. 實(shí)型常量實(shí)型常量(chngling)(chngling)表示表示法法 2. 2. 實(shí)型變量的分類(lèi)實(shí)型變量的分類(lèi)float和double第37頁(yè)/共206頁(yè)第三十七頁(yè),共207頁(yè)。(1)(1)小數(shù)表示法:由符號(hào)、數(shù)字和小數(shù)點(diǎn)組成的常數(shù),可小數(shù)表示法:由符號(hào)、數(shù)字和小數(shù)點(diǎn)組成的常數(shù),可以省去整數(shù)

35、部分,只保留小數(shù)部分,但絕對(duì)不能沒(méi)有小以省去整數(shù)部分,只保留小數(shù)部分,但絕對(duì)不能沒(méi)有小數(shù)點(diǎn)。如,數(shù)點(diǎn)。如,.234.234,250.250.等都是合法的十進(jìn)制小數(shù)。等都是合法的十進(jìn)制小數(shù)。(2)(2)科學(xué)表示法:在小數(shù)表示法后加科學(xué)表示法:在小數(shù)表示法后加e e(或(或E E)及指數(shù)部分。)及指數(shù)部分。注意:注意:E E或或e e的前面必須的前面必須(bx)(bx)要有數(shù)字,且要有數(shù)字,且E E后面的指后面的指數(shù)必須數(shù)必須(bx)(bx)為整數(shù),指數(shù)部分可正可負(fù)。如為整數(shù),指數(shù)部分可正可負(fù)。如2.1E+52.1E+5,123E-3123E-3,123e3123e3,都是合法的,而,都是合法的,

36、而345345,-.5-.5,等都是,等都是非法的指數(shù)形式。非法的指數(shù)形式。實(shí)型常量(chngling)(chngling)表示法第38頁(yè)/共206頁(yè)第三十八頁(yè),共207頁(yè)。實(shí)型變量(binling)(binling)的分類(lèi)(1)單精度型:float型; (數(shù)據(jù)(shj)長(zhǎng)度為4個(gè)字節(jié)) (2)雙精度型:double型; (數(shù)據(jù)(shj)長(zhǎng)度為8個(gè)字節(jié))(3)擴(kuò)展雙精度型:long double型; (數(shù)據(jù)(shj)長(zhǎng)度為16個(gè)字節(jié))v在在C+C+中,一個(gè)實(shí)型常數(shù)如果沒(méi)有中,一個(gè)實(shí)型常數(shù)如果沒(méi)有(mi yu)(mi yu)任何說(shuō)明,則任何說(shuō)明,則表示表示doubledouble型(默認(rèn)型),如

37、:,。型(默認(rèn)型),如:,。v若要表示若要表示floatfloat型數(shù),則必須在實(shí)型數(shù)后面加上型數(shù),則必須在實(shí)型數(shù)后面加上F F或或f f,如:,。,如:,。v若要表示若要表示long doublelong double型數(shù),則必須在實(shí)數(shù)后加上型數(shù),則必須在實(shí)數(shù)后加上L L或或l l,如:,。如:,。v實(shí)型數(shù)據(jù)總是有符號(hào)的。實(shí)型數(shù)據(jù)總是有符號(hào)的。 第39頁(yè)/共206頁(yè)第三十九頁(yè),共207頁(yè)。課課 堂堂 練練 習(xí)習(xí)v下列變量下列變量(binling)(binling)定義中合法的是定義中合法的是 。v A) short _c=2-0.5e-1; B) double b=2+6e2.5; A) s

38、hort _c=2-0.5e-1; B) double b=2+6e2.5; v C) long do=0 xfdaL; D) float 3_and=4- C) long do=0 xfdaL; D) float 3_and=4-e-3;e-3;第40頁(yè)/共206頁(yè)第四十頁(yè),共207頁(yè)。字 符 型 1. 1. 字符字符(z f)(z f)型常型常量量 2. 2. 字符字符(z f)(z f)串常串常量量1.1.一般(ybn)(ybn)字符常量2.2.轉(zhuǎn)義字符( (特殊) )第41頁(yè)/共206頁(yè)第四十一頁(yè),共207頁(yè)。(1)(1)一般字符常量:用單引號(hào)括起來(lái)的一個(gè)字符,其值為一般字符常量:用單

39、引號(hào)括起來(lái)的一個(gè)字符,其值為ASCIIASCII代碼值。如代碼值。如aa, A A, # #, $ $。 在內(nèi)存在內(nèi)存(ni cn)(ni cn)中,字符數(shù)據(jù)是以中,字符數(shù)據(jù)是以ASCIIASCII碼值存儲(chǔ)的碼值存儲(chǔ)的(即以整數(shù)表示),占據(jù)一個(gè)字節(jié)。因此(即以整數(shù)表示),占據(jù)一個(gè)字節(jié)。因此C+C+使字符數(shù)據(jù)和整使字符數(shù)據(jù)和整型數(shù)據(jù)之間可以通用型數(shù)據(jù)之間可以通用( (計(jì)算計(jì)算) )。如:。如: A=65=0101=0 x41=01000001 A A=65=0101=0 x41=01000001 A 和和aa是不是不 a=97=0141=0 x61=01100001 a=97=0141=0 x6

40、1=01100001 同的同的字符常量字符常量 0=48=060=0 x30 0=48=060=0 x30 00和和 0 0是截然是截然 1=49=061=0 x31 1=49=061=0 x31 不同的兩個(gè)數(shù)不同的兩個(gè)數(shù)字符(z f)(z f)型常量第42頁(yè)/共206頁(yè)第四十二頁(yè),共207頁(yè)。(2)(2)轉(zhuǎn)義字符:以轉(zhuǎn)義字符:以“”“”開(kāi)頭開(kāi)頭(ki tu)(ki tu)的特定字符序列,常的特定字符序列,常用于表示用于表示ASCIIASCII字符集中控制代碼及某些特殊字符字符集中控制代碼及某些特殊字符, ,也占據(jù)一也占據(jù)一個(gè)字節(jié)。常用的轉(zhuǎn)義字符如表。個(gè)字節(jié)。常用的轉(zhuǎn)義字符如表。例如下面的代碼

41、,響鈴的同時(shí)輸出一個(gè)字符串。例如下面的代碼,響鈴的同時(shí)輸出一個(gè)字符串。 cout“x7operatingtsystemnok!”; cout“x7operatingtsystemnok!”; 其輸出內(nèi)容為:在響鈴的同時(shí)顯示其輸出內(nèi)容為:在響鈴的同時(shí)顯示 operating system operating system ok! ok!字符(z f)(z f)型常量第43頁(yè)/共206頁(yè)第四十三頁(yè),共207頁(yè)。字符串常量(chngling)(chngling) H E L L O 第44頁(yè)/共206頁(yè)第四十四頁(yè),共207頁(yè)。字符串常量和字符常量的區(qū)別(qbi)(qbi)為:表現(xiàn)形式不同:“x x”

42、, x x 。在內(nèi)存中存放時(shí)所占空間不同:字符常量占1db1db用于存放字符的ASCIIASCII碼值;而字符串常量除每個(gè)字符占用1db1db存放其ASCIIASCII碼值外,還需1db1db存放結(jié)束標(biāo)志00。例如“x x”在內(nèi)存中占連續(xù)兩個(gè)單元( (即2 2個(gè)字節(jié)) ),第二個(gè)單元存放00結(jié)束符,而字符常量x x占一個(gè)字節(jié)。 字符串常量(chngling)(chngling)第45頁(yè)/共206頁(yè)第四十五頁(yè),共207頁(yè)。字符串常量和字符常量的區(qū)別為:操作不同:字符常量可以在一定范圍與整數(shù)進(jìn)行加減運(yùn)算。如r r- -a a+3+3是合法的,而“r r”- -“a a”+3+3是非法(fif)(f

43、if)的。存放兩者的變量不同:字符常量存放在字符變量中,而字符串常量需要存放在一個(gè)一維字符數(shù)組中。如: char char ch=ch=a a; ;是正確的,而char ch=char ch=“a a”; ;是不正確的。即不能將字符串常量賦給字符變量。字符串常量(chngling)(chngling)第46頁(yè)/共206頁(yè)第四十六頁(yè),共207頁(yè)。v下列下列(xili)(xili)關(guān)于字符和字符串的描述關(guān)于字符和字符串的描述 是正確的是正確的( (多選多選) ) 。v A) A)字符串是用一對(duì)雙引號(hào)括起來(lái)的字符序列。例如,字符串是用一對(duì)雙引號(hào)括起來(lái)的字符序列。例如,“abcd”“abcd”v B)

44、 B)字符常量在內(nèi)存中僅占一個(gè)字節(jié),而字符串在內(nèi)存中所字符常量在內(nèi)存中僅占一個(gè)字節(jié),而字符串在內(nèi)存中所 v 占字節(jié)數(shù)為雙引號(hào)內(nèi)的有效字符的個(gè)數(shù)。例如,占字節(jié)數(shù)為雙引號(hào)內(nèi)的有效字符的個(gè)數(shù)。例如,“ab”“ab”占占v 內(nèi)存內(nèi)存2 2個(gè)字節(jié)。個(gè)字節(jié)。v C) C)字符變量可用來(lái)存放一個(gè)字符常量字符變量可用來(lái)存放一個(gè)字符常量, ,也可以用來(lái)存放一個(gè)也可以用來(lái)存放一個(gè)v 字符串。字符串。v D) D)轉(zhuǎn)義字符是以轉(zhuǎn)義字符是以“”“”開(kāi)頭的用來(lái)表示字符的序列,例如,開(kāi)頭的用來(lái)表示字符的序列,例如,nnv 表示換行符。表示換行符。課課 堂堂 練練 習(xí)習(xí)第47頁(yè)/共206頁(yè)第四十七頁(yè),共207頁(yè)。布 爾 類(lèi)

45、 型第48頁(yè)/共206頁(yè)第四十八頁(yè),共207頁(yè)。小小 結(jié)結(jié)123.e-1f(123e-1f)123.e-1f(123e-1f)、1.23e+2L1.23e+2L。v4.4.符號(hào)常量:用constconst和#define#define定義的常量( (一般用大寫(xiě)) )。第49頁(yè)/共206頁(yè)第四十九頁(yè),共207頁(yè)。小小 結(jié)結(jié)v變量(binling)(binling):用于存放數(shù)據(jù)(先定義后使用)。v1.1.整型變量(binling)(binling):intint(4 4個(gè)字節(jié)) )、shortshort(2 2個(gè)字節(jié))、v long(4 long(4個(gè)字節(jié)) ) ( (缺省為signed)sig

46、ned)v ( (它們均可用unsignedunsigned修飾為無(wú)符號(hào)型) )v2.2.字符型變量(binling)(binling):char(1char(1個(gè)字節(jié))()(也可用unsignedunsigned修飾) )v3.3.實(shí)型變量(binling)(binling):floatfloat(4 4個(gè)字節(jié))、doubledouble(8 8個(gè)字節(jié))、v long double long double(1616個(gè)字節(jié))v ( (它們總是signedsigned的,不能用unsignedunsigned修飾) )v4.4.布爾型:boolbool(1 1個(gè)字節(jié))第50頁(yè)/共206頁(yè)第五十頁(yè)

47、,共207頁(yè)。2.4 2.4 運(yùn)算符與表達(dá)式運(yùn)算符與表達(dá)式第51頁(yè)/共206頁(yè)第五十一頁(yè),共207頁(yè)。 2.4.1 2.4.1 賦值運(yùn)算符和賦值表達(dá)式賦值運(yùn)算符和賦值表達(dá)式 2.4.2 2.4.2 算術(shù)運(yùn)算符和算術(shù)表達(dá)式算術(shù)運(yùn)算符和算術(shù)表達(dá)式 關(guān)系運(yùn)算符和關(guān)系表達(dá)式關(guān)系運(yùn)算符和關(guān)系表達(dá)式 邏輯運(yùn)算符和邏輯表達(dá)式邏輯運(yùn)算符和邏輯表達(dá)式 2.4.5 2.4.5 條件運(yùn)算符和條件表達(dá)式條件運(yùn)算符和條件表達(dá)式 逗號(hào)逗號(hào)(duho)(duho)運(yùn)算符和逗號(hào)運(yùn)算符和逗號(hào)(duho)(duho)表達(dá)式表達(dá)式 小結(jié)小結(jié): :運(yùn)算符的優(yōu)先級(jí)與結(jié)合性運(yùn)算符的優(yōu)先級(jí)與結(jié)合性2.4 2.4 運(yùn)算符與表達(dá)式運(yùn)算符與表達(dá)

48、式第52頁(yè)/共206頁(yè)第五十二頁(yè),共207頁(yè)。賦賦 值值 運(yùn)運(yùn) 算算 符符J在在C+中,基本賦值運(yùn)算符為中,基本賦值運(yùn)算符為“=”,其功能是設(shè)置,其功能是設(shè)置變量的值,即將一個(gè)數(shù)據(jù)變量的值,即將一個(gè)數(shù)據(jù)(shj)賦給一個(gè)變量,實(shí)際賦給一個(gè)變量,實(shí)際上是將這個(gè)數(shù)據(jù)上是將這個(gè)數(shù)據(jù)(shj)存入變量所對(duì)應(yīng)的存儲(chǔ)空間。存入變量所對(duì)應(yīng)的存儲(chǔ)空間。另外還有五個(gè)可以由算術(shù)運(yùn)算符組成的復(fù)合賦值運(yùn)算另外還有五個(gè)可以由算術(shù)運(yùn)算符組成的復(fù)合賦值運(yùn)算符:符:+=、- =、*=、/=和和%=;五個(gè)位運(yùn)算符組成的復(fù);五個(gè)位運(yùn)算符組成的復(fù)合賦值運(yùn)算符:合賦值運(yùn)算符:=、&=、|=和和= ,賦值運(yùn)算,賦值運(yùn)算符是雙目

49、運(yùn)算符。符是雙目運(yùn)算符。J賦值運(yùn)算符的結(jié)合性:右結(jié)合(如賦值運(yùn)算符的結(jié)合性:右結(jié)合(如x=5;)。)。J賦值運(yùn)算符的優(yōu)先級(jí)比逗號(hào)運(yùn)算符的優(yōu)先級(jí)高。賦值運(yùn)算符的優(yōu)先級(jí)比逗號(hào)運(yùn)算符的優(yōu)先級(jí)高。第53頁(yè)/共206頁(yè)第五十三頁(yè),共207頁(yè)。J用賦值運(yùn)算符將變量和表達(dá)式連接起來(lái)的式子稱(chēng)為賦值用賦值運(yùn)算符將變量和表達(dá)式連接起來(lái)的式子稱(chēng)為賦值表達(dá)式表達(dá)式(基本基本)。其一般形式。其一般形式(xngsh)為為: 變量變量=表達(dá)式表達(dá)式如如:x=8、y=x、z=x+y等,賦值表達(dá)式的值就是被賦值的等,賦值表達(dá)式的值就是被賦值的變量的值。賦值表達(dá)式加上分號(hào)就構(gòu)成了賦值語(yǔ)句變量的值。賦值表達(dá)式加上分號(hào)就構(gòu)成了賦值語(yǔ)

50、句(極為極為常用常用)。賦賦 值值 表表 達(dá)達(dá) 式式第54頁(yè)/共206頁(yè)第五十四頁(yè),共207頁(yè)。算算 術(shù)術(shù) 運(yùn)運(yùn) 算算1.1.算術(shù)算術(shù)(sunsh)(sunsh)運(yùn)算符及表運(yùn)算符及表達(dá)式達(dá)式2.2.自增自減運(yùn)算符自增自減運(yùn)算符(+ -)(+ -)第55頁(yè)/共206頁(yè)第五十五頁(yè),共207頁(yè)。算術(shù)算術(shù)(sunsh)運(yùn)算運(yùn)算符及表達(dá)式符及表達(dá)式對(duì)任意整數(shù)x和y:若 x%2=0,則 x為偶數(shù)(u sh);若 x%2=1,則 x為奇數(shù);若 x%y=0,則 x能被y整除。第56頁(yè)/共206頁(yè)第五十六頁(yè),共207頁(yè)。自增、自減運(yùn)算自增、自減運(yùn)算(yn sun)Ji- - :使用i之后(zhhu),i的值減1

51、,即先取值,后自減;等價(jià)于i=i-1。J- -i :使i先減1,然后使用i,即先自減,后取值;等價(jià)于i=i-1。J+、-運(yùn)算經(jīng)常被用于運(yùn)算經(jīng)常被用于程序設(shè)計(jì)中程序設(shè)計(jì)中 。: +、-運(yùn)算符是兩個(gè)運(yùn)算符是兩個(gè)+或兩個(gè)或兩個(gè)-的一個(gè)的一個(gè),中間不能有空,中間不能有空格格,應(yīng)盡量避免連用多個(gè)應(yīng)盡量避免連用多個(gè)+、-,以引起編譯錯(cuò)誤。以引起編譯錯(cuò)誤。第57頁(yè)/共206頁(yè)第五十七頁(yè),共207頁(yè)。&請(qǐng)分析請(qǐng)分析(fnx)下列各變量的值。下列各變量的值。& i=3,j=4;& j=i+j+i; (i= , j= )& j=+i+j+i; (i= , j= )& j=i

52、+j+(- -i); (i= , j= )& j=i+(j-)+(i - -); (i= , j= )410520429課課 堂堂 練練 習(xí)習(xí)336第58頁(yè)/共206頁(yè)第五十八頁(yè),共207頁(yè)。J用關(guān)系用關(guān)系(gun x)運(yùn)算符將兩個(gè)表達(dá)式連接起來(lái)的式子稱(chēng)為運(yùn)算符將兩個(gè)表達(dá)式連接起來(lái)的式子稱(chēng)為關(guān)系關(guān)系(gun x)表達(dá)式。其一般格式為:表達(dá)式。其一般格式為: 表達(dá)式表達(dá)式1 關(guān)系關(guān)系(gun x)運(yùn)算符運(yùn)算符 表達(dá)式表達(dá)式2J 例如:例如:ab都是合法的關(guān)系都是合法的關(guān)系(gun x)表達(dá)式。表達(dá)式。J說(shuō)明:說(shuō)明:J (1)關(guān)系關(guān)系(gun x)運(yùn)算符兩側(cè)的表達(dá)式可以是常量、變運(yùn)算符兩側(cè)

53、的表達(dá)式可以是常量、變量和表達(dá)式量和表達(dá)式(可以是算術(shù)表達(dá)式、關(guān)系可以是算術(shù)表達(dá)式、關(guān)系(gun x)表達(dá)式、表達(dá)式、邏輯表達(dá)式、賦值表達(dá)式邏輯表達(dá)式、賦值表達(dá)式)。 J (2)關(guān)系關(guān)系(gun x)表達(dá)式的值表達(dá)式的值(bool) 成立成立 真真 1J 不成立不成立 假假 0 x=5+(83); / x等于(dngy)6 x=5+83;關(guān)關(guān) 系系 表表 達(dá)達(dá) 式式第59頁(yè)/共206頁(yè)第五十九頁(yè),共207頁(yè)。關(guān)關(guān) 系系 表表 達(dá)達(dá) 式式第60頁(yè)/共206頁(yè)第六十頁(yè),共207頁(yè)。&請(qǐng)分析請(qǐng)分析(fnx)下列表達(dá)式的值下列表達(dá)式的值(a=3,b=2,c=1,f= -1) 。& ab

54、 表達(dá)式值:(表達(dá)式值:( ) & c=ab ( )& b+cb ( ; d= )& (d=ab)!=b+f ( ; d= ) & d=ab!=b+f ( ; d= )& e=abc ( )1101101000課課 堂堂 練練 習(xí)習(xí)第61頁(yè)/共206頁(yè)第六十一頁(yè),共207頁(yè)。邏邏 輯輯 表表 達(dá)達(dá) 式式J用邏輯運(yùn)算符將操作數(shù)連接起來(lái)的式子稱(chēng)為邏輯表達(dá)式,用邏輯運(yùn)算符將操作數(shù)連接起來(lái)的式子稱(chēng)為邏輯表達(dá)式,用于表示復(fù)雜的運(yùn)算條件。例如:用于表示復(fù)雜的運(yùn)算條件。例如:J 數(shù)學(xué)不等式:數(shù)學(xué)不等式: C+邏輯表達(dá)式:邏輯表達(dá)式:J 00&x1或或x1|x3

55、&2|84&!5|109+!0 ( )11110課課 堂堂 練練 習(xí)習(xí)第64頁(yè)/共206頁(yè)第六十四頁(yè),共207頁(yè)。例如(lr)下面的表達(dá)式:(m=ab)&(n=cd) ,當(dāng)a=1, b=2, c=3, d=4, m和n的原值為1時(shí),求出m、n和表達(dá)式的值。(m=0, n=1,表達(dá)式的值為0)邏邏 輯輯 表表 達(dá)達(dá) 式式第65頁(yè)/共206頁(yè)第六十五頁(yè),共207頁(yè)。條件條件(tiojin)運(yùn)算符運(yùn)算符及表達(dá)式及表達(dá)式算術(shù)運(yùn)算符。例例如果如果(rgu)(rgu)有如下條件表達(dá)式:有如下條件表達(dá)式:ab?a:cd?c:dab?a:cd?c:d它相當(dāng)于:它相當(dāng)于: (ab)?a:

56、(cd?c:d) (ab)?a:(cd?c:d)如果有如下表達(dá)式如果有如下表達(dá)式: c=(: c=(ab)?a:(b+1);它就可以寫(xiě)成:它就可以寫(xiě)成:c=c=ab?a:b+1;第66頁(yè)/共206頁(yè)第六十六頁(yè),共207頁(yè)。課課 堂堂 練練 習(xí)習(xí)設(shè)設(shè)char ch=A;表達(dá)式表達(dá)式 ch=!(ch=A&ch=Z)?ch:(ch+32)的值是的值是 。a第67頁(yè)/共206頁(yè)第六十七頁(yè),共207頁(yè)。 逗號(hào)運(yùn)算符是C+C+提供(tgng)(tgng)的一種特殊運(yùn)算符,其功能是將表達(dá)式連接起來(lái),從左向右求解各個(gè)表達(dá)式( (左結(jié)合性) ),而整個(gè)逗號(hào)表達(dá)式的值為最后求解的表達(dá)式的值。因此,逗號(hào)運(yùn)算

57、符也稱(chēng)順序求值運(yùn)算符。逗號(hào)運(yùn)算符的優(yōu)先級(jí)最低。逗號(hào)逗號(hào)(duho)(duho)運(yùn)算符運(yùn)算符及表達(dá)式及表達(dá)式第68頁(yè)/共206頁(yè)第六十八頁(yè),共207頁(yè)。逗逗 號(hào)號(hào) 表表 達(dá)達(dá) 式式第69頁(yè)/共206頁(yè)第六十九頁(yè),共207頁(yè)。2.5 2.5 類(lèi)型轉(zhuǎn)換類(lèi)型轉(zhuǎn)換2.5.1 2.5.1 自動(dòng)自動(dòng)(zdng)(zdng)類(lèi)型轉(zhuǎn)換類(lèi)型轉(zhuǎn)換 強(qiáng)制類(lèi)型轉(zhuǎn)換強(qiáng)制類(lèi)型轉(zhuǎn)換第70頁(yè)/共206頁(yè)第七十頁(yè),共207頁(yè)。自動(dòng)自動(dòng)(zdng)(zdng)類(lèi)型類(lèi)型轉(zhuǎn)換轉(zhuǎn)換z類(lèi)型轉(zhuǎn)換規(guī)則類(lèi)型轉(zhuǎn)換規(guī)則(guz):z long doublez 高高 double floatz unsigned longz longz unsigne

58、dz 低低 int char , short z 例例 第71頁(yè)/共206頁(yè)第七十一頁(yè),共207頁(yè)。強(qiáng)制強(qiáng)制(qingzh)(qingzh)類(lèi)型類(lèi)型轉(zhuǎn)換轉(zhuǎn)換第72頁(yè)/共206頁(yè)第七十二頁(yè),共207頁(yè)。以下選項(xiàng)中非法的表達(dá)式是以下選項(xiàng)中非法的表達(dá)式是_。 A) 0=x=3等價(jià)等價(jià)(dngji)于于a=a3 D)使用復(fù)合賦值運(yùn)算符可提高計(jì)算速度使用復(fù)合賦值運(yùn)算符可提高計(jì)算速度課課 堂堂 練練 習(xí)習(xí)第74頁(yè)/共206頁(yè)第七十四頁(yè),共207頁(yè)。書(shū)面書(shū)面(shmin)(shmin)練習(xí):練習(xí):基本基本(jbn)(jbn)數(shù)據(jù)類(lèi)型、運(yùn)算符與表達(dá)數(shù)據(jù)類(lèi)型、運(yùn)算符與表達(dá)式式第75頁(yè)/共206頁(yè)第七十五頁(yè),共2

59、07頁(yè)。 數(shù)組是一個(gè)在內(nèi)存中順序排列的、由若干相同數(shù)據(jù)類(lèi)數(shù)組是一個(gè)在內(nèi)存中順序排列的、由若干相同數(shù)據(jù)類(lèi)型的元素組成的數(shù)據(jù)集合。其所有元素共用一個(gè)名字,即型的元素組成的數(shù)據(jù)集合。其所有元素共用一個(gè)名字,即數(shù)組名。改變數(shù)組中某一個(gè)元素的值對(duì)其他元素沒(méi)有影響。數(shù)組名。改變數(shù)組中某一個(gè)元素的值對(duì)其他元素沒(méi)有影響。數(shù)組的每個(gè)元素都有唯一的下標(biāo),通過(guò)數(shù)組名和下標(biāo),可數(shù)組的每個(gè)元素都有唯一的下標(biāo),通過(guò)數(shù)組名和下標(biāo),可以訪問(wèn)數(shù)組中的元素,因此數(shù)組元素也稱(chēng)為下標(biāo)變量。下以訪問(wèn)數(shù)組中的元素,因此數(shù)組元素也稱(chēng)為下標(biāo)變量。下標(biāo)實(shí)際上就是數(shù)組元素在數(shù)組中的位置值,不能超出數(shù)組標(biāo)實(shí)際上就是數(shù)組元素在數(shù)組中的位置值,不能超

60、出數(shù)組下標(biāo)的取值范圍下標(biāo)的取值范圍(fnwi)。數(shù)組分一維數(shù)組和多維數(shù)組。數(shù)組分一維數(shù)組和多維數(shù)組。 數(shù)組屬于構(gòu)造類(lèi)型。數(shù)組屬于構(gòu)造類(lèi)型?;?本本 術(shù)術(shù) 語(yǔ)語(yǔ)第76頁(yè)/共206頁(yè)第七十六頁(yè),共207頁(yè)。 4.1 4.1 一維數(shù)組一維數(shù)組 二維數(shù)組二維數(shù)組 4.3 4.3 字符字符(z (z f)f)數(shù)組數(shù)組第77頁(yè)/共206頁(yè)第七十七頁(yè),共207頁(yè)。4.4.1 一維數(shù)組的定義一維數(shù)組的定義數(shù)組必須數(shù)組必須(bx)先定義,后使用。先定義,后使用。一般定義形式為一般定義形式為: 數(shù)據(jù)類(lèi)型數(shù)據(jù)類(lèi)型 數(shù)組名數(shù)組名常量表達(dá)式常量表達(dá)式; 例如:例如:int a10;第78頁(yè)/共206頁(yè)第七十八頁(yè),共207頁(yè)。數(shù)據(jù)類(lèi)型是數(shù)組的數(shù)據(jù)類(lèi)型,也就是每一個(gè)數(shù)組元數(shù)據(jù)類(lèi)型是數(shù)組的數(shù)據(jù)類(lèi)型,也就是每一個(gè)數(shù)組元素的類(lèi)型素的類(lèi)型, ,可以是可以是C+C+中任何

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論