




已閱讀5頁(yè),還剩95頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
C 語(yǔ)言,語(yǔ)言是什么?,規(guī)則 語(yǔ)法 句子 語(yǔ)句,C語(yǔ)句概述,C語(yǔ)句分為,C語(yǔ)句概述,(一)控制語(yǔ)句 完成一定的控制功能 1 if() else 條件語(yǔ)句 6 break 間斷語(yǔ)句 2 for() 循環(huán)語(yǔ)句 7 switch() 開(kāi)關(guān)語(yǔ)句 3 while()循環(huán)語(yǔ)句 8 goto 轉(zhuǎn)向語(yǔ)句 4 do while();循環(huán)語(yǔ)句 9 return 返回語(yǔ)句 5 continue 繼續(xù)語(yǔ)句,C語(yǔ)句概述,(二)函數(shù)調(diào)用語(yǔ)句 有一個(gè)函數(shù)調(diào)用加一個(gè)分號(hào)構(gòu)成一個(gè)語(yǔ)句 printf(“This is a C statement.”);,C語(yǔ)句概述,(三)表達(dá)式語(yǔ)句 有一個(gè)表達(dá)式加一個(gè)分號(hào)構(gòu)成一個(gè)語(yǔ)句 a = 3 ;,分號(hào),表達(dá)式,表達(dá)式語(yǔ)句,+,=,C語(yǔ)句概述,(四)空語(yǔ)句 只有一個(gè)分號(hào)的語(yǔ)句 (什么也不做),C語(yǔ)句概述,(五)復(fù)合語(yǔ)句 用一對(duì)括起來(lái)的語(yǔ)句 z=x+y; t=z/100; printf(“%f”,t); ,簡(jiǎn)單的C語(yǔ)言程序,#include main( ) printf (“This is a C program.n“); ,/*文件包含*/ /*主函數(shù) */ /*函數(shù)體開(kāi)始*/ /*輸出語(yǔ)句*/ /*函數(shù)體結(jié)束*/,/*注釋*/,#include main( ) printf (“This is a C program.n“); ,main:主函數(shù)名,每個(gè)C程序有且只有一個(gè)主函數(shù), C程序總是從main函數(shù)開(kāi)始執(zhí)行的,與main函數(shù)的位置無(wú)關(guān)。,#include main( ) printf (“This is a C program.n“); , 是函數(shù)開(kāi)始和結(jié)束的標(biāo)志,不可省 每個(gè)C語(yǔ)句以分號(hào)結(jié)束 使用標(biāo)準(zhǔn)庫(kù)函數(shù)時(shí)應(yīng)在程序開(kāi)頭一行寫(xiě): #include ,求兩數(shù)之和,#include void main( ) /*求兩數(shù)之和*/ int a,b,sum; /*聲明,定義變量為整型*/ /*以下3行為C語(yǔ)句 */ a=123; b=456; sum=a+b; printf(sum is %dn,sum); ,說(shuō)明: /*/表示注釋。注釋只是給人看的,對(duì)編譯和運(yùn)行不起作用。所以可以用漢字或英文字符表示,可以出現(xiàn)在一行中的最右側(cè),也可以單獨(dú)成為一行。,簡(jiǎn)單的C語(yǔ)言程序介紹,C程序: (1) C程序是由函數(shù)構(gòu)成的。 這使得程序容易實(shí)現(xiàn)模塊化。 (2) 一個(gè)函數(shù)由兩部分組成:,簡(jiǎn)單的C語(yǔ)言程序介紹,函數(shù)的首部: 函數(shù)體:花括號(hào)內(nèi)的部分。若一個(gè)函數(shù)有多個(gè)花括號(hào),則最外層的一對(duì)花括號(hào)為函數(shù)體的范圍。 函數(shù)體包括兩部分 : 聲明部分: 可缺省 執(zhí)行部分:由若干個(gè)語(yǔ)句組成。可缺省,注意: 函數(shù)的聲明部分和執(zhí)行部分都可缺省,例如: void dump ( ) 這是一個(gè)空函數(shù),什么也不做,但是合法的函數(shù)。,簡(jiǎn)單的C語(yǔ)言程序介紹,一個(gè)函數(shù)的例子,int max(int x, int y) int z; if (xy) z=x; else z=y; return (z); ,(1) C程序總是從main函數(shù)開(kāi)始執(zhí)行的,與main函數(shù)的位置無(wú)關(guān)。 (2) C程序書(shū)寫(xiě)格式自由,一行內(nèi)可以寫(xiě)幾個(gè)語(yǔ)句, 一個(gè)語(yǔ)句可以分寫(xiě)在多行上,C程序沒(méi)有行號(hào)。 (3) 每個(gè)語(yǔ)句和數(shù)據(jù)聲明的最后必須有一個(gè)分號(hào)。 (4) C語(yǔ)言本身沒(méi)有輸入輸出語(yǔ)句。輸入和輸出的操作是由庫(kù)函數(shù)scanf和printf等函數(shù)來(lái)完成的。C對(duì)輸入輸出實(shí)行“函數(shù)化”。,簡(jiǎn)單的C語(yǔ)言程序介紹,void main( ) /* 主函數(shù)*/ int a, b, c; /*定義變量a、b、c */ scanf(d,d, /*輸出c的值*/ ,#include int max(int x, int y) int z; if (xy) z=x; else z=y; return (z); void main( ) /* 主函數(shù)*/ int a, b, c; /*定義變量a、b、c */ scanf(d,d, /*輸出c的值*/ ,例: 以下敘述中正確的是() A C程序中注釋部分可以出現(xiàn)在程序中任意合適的地方 B C程序的書(shū)寫(xiě)格式是固定的,每行只能寫(xiě)一條語(yǔ)句 C 構(gòu)成C程序的基本單位是函數(shù),所有函數(shù)名都可以由用戶命名 D 在對(duì)C語(yǔ)言程序進(jìn)行編譯時(shí),可以發(fā)現(xiàn)注釋行中的拼寫(xiě)錯(cuò)誤,C語(yǔ)言規(guī)定,在一個(gè)C程序中,main()函數(shù)的位置() A 必須在系統(tǒng)調(diào)用的庫(kù)函數(shù)之后 B 必須在程序的開(kāi)始 C 必須在程序的最后 D 可以在任意位置,對(duì)于一個(gè)正常運(yùn)行的C程序,下列敘述中正確的是() A 程序的執(zhí)行總是從main函數(shù)開(kāi)始,在main函數(shù)結(jié)束 B 程序的執(zhí)行總是從程序的第一個(gè)函數(shù)開(kāi)始,在main函數(shù)結(jié)束 C程序的執(zhí)行總是從main函數(shù)開(kāi)始,在程序的最后一個(gè)函數(shù)中結(jié)束 D程序的執(zhí)行總是從程序的第一個(gè)函數(shù)開(kāi)始,在程序的最后一個(gè)函數(shù)中結(jié)束,下列4個(gè)程序中,完全正確的是( )。 A)#include main( ); /*programming*/ printf(“programming! n“); B)#include main( ) /* / programming / */ printf(“programming!n“); C)#include main( ) /* / programming*/ */ printf(“programming! n“); D)include main( ) /*programming */ printf(“programming! n“);,標(biāo)識(shí)符,分類,關(guān)鍵字(32個(gè)) (有固定含義,不可改變),預(yù)定義標(biāo)識(shí)符 (有特殊含義,可以改變),小寫(xiě),類型說(shuō)明符:int,float,double等 語(yǔ)句定義符:if,for,while等,庫(kù)函數(shù)的名字:printf , scanf 等 編譯預(yù)處理命令名:include等,用戶自定義的標(biāo)識(shí)符 格式合法,不能使用關(guān)鍵字,見(jiàn)名知意,標(biāo)識(shí)符,命名規(guī)則: 標(biāo)識(shí)符中只能包含字母 (a-z,A-Z),數(shù)字(0-9),下劃線(_)。 第一個(gè)字符必須是字母或下劃線。,例,以下C語(yǔ)言用戶標(biāo)識(shí)符中,不合法的是() A _1 B AaBc C a_b D a-b,例,可在C程序中用作用戶標(biāo)識(shí)符的一組標(biāo)識(shí)符是( )。 A)void define WORD B)as_b3 _123 If C)For -abc case D)2c DO SIG,2019/6/29,28,常量,1.定義:在程序執(zhí)行期間,其值不可改變的量稱為常量 2.類型: 數(shù)值常量 例如:10,3 , 2.68等 符號(hào)常量 即用一個(gè)符號(hào)代表一個(gè)常量,例如: #define PI 3.1415926 main( ) float r,l,s; r=2; l=2*PI*r;s=PI*r*r; printf(“l(fā)=%d, s=%d”, l,s); ,2019/6/29,30,符號(hào)常量必須先定義后才能用它表示一個(gè)數(shù)值。 符號(hào)常量的值在其作用域內(nèi)不能改變,也不能再被賦值。 符號(hào)常量名習(xí)慣用大寫(xiě)字母表示。,說(shuō)明,常量,整型 100,125,-100,0 實(shí)型 3.14 , 0.125,-3.789 字符型 a, b,2 字符串 “a”, “ab”,“1232”,變量,變量代表內(nèi)存中具有特定屬性的一個(gè)存儲(chǔ)單元,它用來(lái)存放數(shù)據(jù),這就是變量的值,在程序運(yùn)行期間,這些值是可以改變的。,變量,變量命名的規(guī)定:語(yǔ)言規(guī)定標(biāo)識(shí)符只能由字母、數(shù)字和下劃線三種字符組成,且第一個(gè)字符必須為字母或下劃線。 例:sum,_total, month, Student_name, lotus_1_2_,BASIC, li_ling M.D.John, ¥123,3D64,ab,變量,注意: 編譯系統(tǒng)將大寫(xiě)字母和小寫(xiě)字母認(rèn)為是兩個(gè)不同的字符。 在選擇變量名和其它標(biāo)識(shí)符時(shí),應(yīng)注意做到“見(jiàn)名知意”,即選有含意的英文單詞 (或其縮寫(xiě))作標(biāo)識(shí)符。 要求對(duì)所有用到的變量作強(qiáng)制定義,也就是“先定義,后使用” 。,C的數(shù)據(jù)類型,數(shù)據(jù)類型,構(gòu)造類型,指針類型,空類型(無(wú)值類型) void,單精度實(shí)型 float,雙精度實(shí)型 double,長(zhǎng)雙精度型(long double),整型數(shù)據(jù),整型變量 (1)整型數(shù)據(jù)在內(nèi)存中的存放形式 數(shù)據(jù)在內(nèi)存中是以二進(jìn)制形式存放的。 如: int i; /* 定義為整型變量 */ i=10; /* 給i賦以整數(shù)10 */,整型數(shù)據(jù),(2)整型變量的分類: 字節(jié)數(shù),共六種,有符號(hào)基本整型 有符號(hào)短整型 有符號(hào)長(zhǎng)整型 無(wú)符號(hào)基本整型 無(wú)符號(hào)短整型 無(wú)符號(hào)長(zhǎng)整型,(signed)int 4 (signed)short (int ) 2 (signed) long (int) 4 unsigned int 4 unsigned short (int) 2 unsigned long (int) 4,注意:括號(hào)表示其中的內(nèi)容是可選的.,整型數(shù)據(jù),(3)整型變量的定義: 規(guī)定在程序中所有用到的變量都必須在程序中定義,即“強(qiáng)制類型定義”。 例如: int a,b(指定變量、為整型) unsigned short c,d;(指定變量、為無(wú)符號(hào)短整型) long e,f;(指定變量、為長(zhǎng)整型),整型數(shù)據(jù),整型常量的表示方法 整型常量即整常數(shù)。在語(yǔ)言中,整常數(shù) 可用以下三種形式表示: (1)十進(jìn)制整數(shù)。 如:123, -456.4。 (2)八進(jìn)制整數(shù)。以0頭的數(shù)是八進(jìn)制數(shù)。 如:0123表示八進(jìn)制數(shù)123,等于十進(jìn)制數(shù)83,整型數(shù)據(jù),(3)十六進(jìn)制整數(shù)。以0x開(kāi)頭的數(shù)是16進(jìn)制數(shù)。 如:0x123,代表16進(jìn)制數(shù)123,等于十進(jìn)制數(shù) 291。,十進(jìn)制整常數(shù):沒(méi)有前綴,其數(shù)碼為0-9。例如65535,-568 八進(jìn)制整常數(shù):以0開(kāi)頭,其數(shù)碼為0-7。例如015 十六進(jìn)制整常數(shù):以0X或0x開(kāi)頭,其數(shù)碼為0-9,A-F或a-f。例如0x2A 長(zhǎng)整型數(shù):整型常數(shù)后綴為L(zhǎng)或l。例如358000L 無(wú)符號(hào)數(shù):整型常數(shù)后綴為U或u。例如158u,總結(jié),例題: 定義無(wú)符號(hào)整數(shù)類為UInt,下面可以作為類UInt實(shí)例化值的是( ) A -369 B 369 C 0.369 D 整數(shù)集合1,2,3,4,5,例題: 以下選項(xiàng)中,能用作數(shù)據(jù)常量的是( ) A o115 B 0118 C 1.5e1.5 D 115L,浮點(diǎn)型數(shù)據(jù),浮點(diǎn)型變量的分類 浮點(diǎn)型變量分為單精度(float型)、雙精度(double型)和長(zhǎng)雙精度型(long double)三類形式。,例題: #include main( ) int s,t,A=100;double B=6; s=sizeof(A); t=sizeof(B); printf(“%d,%dn”,s,t); 在VC6平臺(tái)上編譯運(yùn)行,程序運(yùn)行后的輸出結(jié)果是( ) A 2,4 B 4,4 C 4,8 D 10,6,2019/6/29,46,小數(shù)形式:由數(shù)字和小數(shù)點(diǎn)及正負(fù)號(hào)組成。 (注意:必須有小數(shù)點(diǎn)) 例如:23.678 .123 123. 0.123 指數(shù)形式:由數(shù)字、小數(shù)點(diǎn)、字母e或E及正負(fù)號(hào)組成。 (注:e或E之前必須有數(shù)字,且后指數(shù)必須為整數(shù)) 例如:3.5E-5 2e3,實(shí)型常量,例題: 以下選項(xiàng)中可用作C程序合法實(shí)數(shù)的是( ) A 1e0 B 3.0e0.2 C E9 D 9.12E,字符型數(shù)據(jù),字符常量 (1)用單引號(hào)包含的一個(gè)字符是字符型常量 (2)只能包含一個(gè)字符,a,A, 1 abc、“a”,字符型數(shù)據(jù),字符串常量 字符串常量是一對(duì)雙撇號(hào)括起來(lái)的字符序列. 合法的字符串常量: “How do you do.”, “CHINA”, “a” , “$123.45” 可以輸出一個(gè)字符串,如 printf(“How do you do.”);,字符型數(shù)據(jù),字符變量 字符型變量用來(lái)存放字符常量,注意只能放一個(gè)字符。 字符變量的定義形式如下:char c1,c2; 可以用下面語(yǔ)句對(duì)c1,c2賦值: c1a;c2 b ; 一個(gè)字符變量在內(nèi)存中占一個(gè)字節(jié)。,字符型數(shù)據(jù),是字符常量,”是字符串常量,二者不 同。 如:假設(shè)被指定為字符變量 :char c,c=a; ”a”;c”CHINA”;,結(jié)論:不能把一個(gè)字符串常量賦給一個(gè)字符變量。,字符型數(shù)據(jù),字符數(shù)據(jù)在內(nèi)存中的存儲(chǔ)形式及其使用方法 將一個(gè)字符常量放到一個(gè)字符變量中,實(shí)際上并不是把該字符本身放到內(nèi)存單元中去,而是將該字符的相應(yīng)的ASCII代碼放到存儲(chǔ)單元中。,這樣使字符型數(shù)據(jù)和整型數(shù)據(jù)之間可以通用。一個(gè)字符數(shù)據(jù)既可以以字符形式輸出,也可以以整數(shù)形式輸出。,char c1,c2; c1=97; c2=98; 說(shuō)明:它的作用相當(dāng)于以下兩個(gè)賦值語(yǔ)句: c1;c2; 因?yàn)閍和b的ASCII碼為和 語(yǔ)言允許字符數(shù)據(jù)與整數(shù)直接進(jìn)行算術(shù)運(yùn)算 c1=c1-32;,記住,0的ASCII碼值為48; A的ASCII碼值為65; a的ASCII碼值為97。 大寫(xiě)字母與小寫(xiě)字母的ASCII碼值相差32。,有以下程序 #include main() char c1,c2; c1=A+8-4; c2=A+8-5; printf(“%c,%dn”,c1,c2); 已知字母A的ASCII碼為65,程序運(yùn)行后的輸出結(jié)果是( ) A E,68 B D,69 C E,D D 輸出無(wú)定值,轉(zhuǎn)義字符,有些以“”開(kāi)頭的特殊字符稱為轉(zhuǎn)義字符,n 換行 t 橫向跳格 r 回車 反斜杠 ddd ddd表示1到3位八進(jìn)制數(shù)字 xhh hh表示1到2位十六進(jìn)制數(shù)字,例題 有以下定義語(yǔ)句,編譯時(shí)會(huì)出現(xiàn)編譯錯(cuò)誤的是 A char a=a; B char a=n; C char a=aa; D char a=x2d; 以下選項(xiàng)中能表示合法常量的是() A 整數(shù):1,200 B 實(shí)數(shù):1.5E2.0 C 字符斜杠: D 字符:“007” 以下選項(xiàng)中不能用作C程序合法常量的是( ) A 1,234 B 123 C 123 D x7A ,以下不正確的轉(zhuǎn)義字符是( )。 A) B) t C) n D) 088,變量賦初值,(1)語(yǔ)言允許在定義變量的同時(shí)使變量初始化 如: int a=3; /* 指定為整型變量,初值為*/ float f=3.56;,變量賦初值,(2)可以使被定義的變量的一部分賦初值。 如: int a,b,c=5; (3)如果對(duì)幾個(gè)變量賦以同一個(gè)初值, 應(yīng)寫(xiě)成:int a=3,b=3,c=3; 不能寫(xiě)成 int a=b=c=3;,注意:初始化不是在編譯階段完成的而是在程序運(yùn)行時(shí)執(zhí)行本函數(shù)時(shí)賦初值的,相當(dāng)于有一個(gè)賦值語(yǔ)句。,運(yùn)算符,運(yùn)算符,的運(yùn)算符有以下幾類: (1)算術(shù)運(yùn)算符 (+ - * / %) (2)關(guān)系運(yùn)算符 (?。?(3)邏輯運(yùn)算符 (!|) (4)位運(yùn)算符 ( |) (5)賦值運(yùn)算符 (及其擴(kuò)展賦值運(yùn)算符) (6)條件運(yùn)算符 (?:) (7)逗號(hào)運(yùn)算符 (,),運(yùn)算符,(8)指針運(yùn)算符 (*和) (9)求字節(jié)數(shù)運(yùn)算符() (10)強(qiáng)制類型轉(zhuǎn)換運(yùn)算符( (類型) ) (11)分量運(yùn)算符(-) (12)下標(biāo)運(yùn)算符( ) (13)其他 (如函數(shù)調(diào)用運(yùn)算符(),記住,運(yùn)算符的優(yōu)先級(jí) 級(jí)別由大到小:(邏輯)非 算(術(shù)運(yùn)算符) 關(guān)(系運(yùn)算符) (邏輯)與 (邏輯)或 條(件運(yùn)算符) 賦(值運(yùn)算符),算術(shù)運(yùn)算符,基本的算術(shù)運(yùn)算符: (加法運(yùn)算符,或正值運(yùn)算符。如:、) (減法運(yùn)算符,或負(fù)值運(yùn)算符。如:、) * (乘法運(yùn)算符。如:*) (除法運(yùn)算符。如:) (模運(yùn)算符,或稱求余運(yùn)算符,兩側(cè)均應(yīng)為整型數(shù)據(jù),如:的值為)。,算術(shù)運(yùn)算符,語(yǔ)言規(guī)定了運(yùn)算符的優(yōu)先級(jí)和結(jié)合性。 在表達(dá)式求值時(shí),先按運(yùn)算符的優(yōu)先級(jí)別高低次序執(zhí)行,例如先乘除后加減。 規(guī)定了各種運(yùn)算符的結(jié)合方向(結(jié)合性) 算術(shù)運(yùn)算符的結(jié)合方向?yàn)椤白宰笾劣摇?,即先左后?。,記住,/:當(dāng)除號(hào)左右兩邊都是整數(shù)的時(shí)候,商也要是整數(shù),如果不是整數(shù)則舍棄小數(shù)部分。 當(dāng)參與運(yùn)算量有一個(gè)為實(shí)型,則商為double型。,例題: 如有定義語(yǔ)句:int x=12,y=8,z;,在其后執(zhí)行語(yǔ)句z=0.9+x/y,則z的值為 ( ) A.1.9 B.1 C.2 D.2.4,類型轉(zhuǎn)換,各種類型數(shù)據(jù)混合運(yùn)算時(shí),最終結(jié)果的類型可依據(jù)以下轉(zhuǎn)換規(guī)律: char - short - int - long - float - double,例題: 若有定義語(yǔ)句:int a=10;double b=3.14;,則表達(dá)式A+a+b值得類型是 ( ) A.char B.int C.double D.float,有兩種類型轉(zhuǎn)換: 一種是在運(yùn)算時(shí)不必用戶指定,系統(tǒng)自動(dòng)進(jìn)行的類型轉(zhuǎn)換,如3+6.5。 第二種是強(qiáng)制類型轉(zhuǎn)換。當(dāng)自動(dòng)類型轉(zhuǎn)換不能實(shí)現(xiàn)目的時(shí),可以用強(qiáng)制類型轉(zhuǎn)換。,強(qiáng)制類型轉(zhuǎn)換運(yùn)算符,可以利用強(qiáng)制類型轉(zhuǎn)換運(yùn)算符將一個(gè)表達(dá)式轉(zhuǎn)換成所需類型。 一般形式:(類型名)(表達(dá)式) 例如: (double) 將轉(zhuǎn)換成double類型 (int)(x+y) 將x+y的值轉(zhuǎn)換成整型 (float)(5%3) 將5%3的值轉(zhuǎn)換成float型,例題: 以下程序運(yùn)行后的輸出結(jié)果是 () 。 main() int a; a=(int)(double)(3/2)+0.5+(int)1.99*2); printf(“%dn“,a); ,若有定義:int a=7;float x=2.5,y=4.7;則表達(dá)式x+a%3*(int)(x+y)%2/4的值是( )。 A 2.500000 B 2.750000 C 3.500000 D 0.000000,賦值運(yùn)算符,(1)賦值運(yùn)算符 賦值符號(hào)“”就是賦值運(yùn)算符,它的作用是 將一個(gè)數(shù)據(jù)賦給一個(gè)變量。 a=3 注意賦值運(yùn)算符左邊必須是變量,而不是表達(dá)式,賦值運(yùn)算符和賦值表達(dá)式,(2) 復(fù)合的賦值運(yùn)算符 在賦值符“”之前加上其他運(yùn)算符,可以構(gòu)成復(fù) 合的運(yùn)算符。 例如: 等價(jià)于 * 等價(jià)于 *() 等價(jià)于 ,賦值運(yùn)算符和賦值表達(dá)式,為便于記憶,可以這樣理解: a += b (其中a為變量,b為表達(dá)式) a += b(將有下劃線的“a+”移到“=”右側(cè)) |_ a = a + b (在“=”左側(cè)補(bǔ)上變量名a),注意:如果是包含若干項(xiàng)的表達(dá)式,則相當(dāng)于它有 括號(hào)。 如: x %= y+3 x %= (y+3) |_ x = x %(y+3)(不要錯(cuò)寫(xiě)成x=x%y+3),凡是二元(二目)運(yùn)算符,都可以與賦值符一起組合成復(fù)合賦值符。,語(yǔ)言規(guī)定可以使用種復(fù)合賦值運(yùn)算符: ,*,|,賦值運(yùn)算符,(3) 賦值表達(dá)式 由賦值運(yùn)算符將一個(gè)變量和一個(gè)表達(dá)式連接 起來(lái)的式子稱為“賦值表達(dá)式”。 一般形式為: 例如: “5”是一個(gè)賦值表達(dá)式,賦值運(yùn)算符,對(duì)賦值表達(dá)式求解的過(guò)程是: 求賦值運(yùn)算符右側(cè)的“表達(dá)式”的值; 賦給賦值運(yùn)算符左側(cè)的變量。 例如: 賦值表達(dá)式“=3*5”的值為15,執(zhí)行表達(dá)式后,變量a的值也是15。,注意: 一個(gè)表達(dá)式應(yīng)該有一個(gè)值,賦值運(yùn)算符,賦值表達(dá)式中的“表達(dá)式”,又可以是一個(gè)賦值表 達(dá)式.例如: a=(b=5),分析:括弧內(nèi)的“b=5”是一個(gè)賦值表達(dá)式,它 的值等于5。執(zhí)行表達(dá)式“a=(b=5)”相當(dāng)于執(zhí)行 “b=5”和“ab”兩個(gè)賦值表達(dá)式。 賦值運(yùn)算符 按照“自右而左”的結(jié)合順序,因此,“(b5)” 外面的括弧可以不要,即“a=(b=5)”和“a=b=5” 等價(jià).,賦值運(yùn)算符,請(qǐng)分析下面的賦值表達(dá)式(a=3*5)=4*3,分析:先執(zhí)行括弧內(nèi)的運(yùn)算,將15賦給a,然后執(zhí)行 4*3的運(yùn)算,得12,再把12賦給a。最后a的值為12, 整個(gè)表達(dá)式的值為12??梢钥吹?a=3*5)出現(xiàn)在賦 值運(yùn)算符的左側(cè),因此賦值表達(dá)式(a=3*5)是左值,注意:在對(duì)賦值表達(dá)式(a=3*5)求解后,變量a得到值 15執(zhí)行(a=3*5)=4*3時(shí),實(shí)際上是將4*3的積12賦給變 量a,而不是賦給3*5。,不能寫(xiě)成: a=3*5=4*3,賦值運(yùn)算符,賦值表達(dá)式也可以包含復(fù)合的賦值運(yùn)算符。 如:a+=a-=a*a,分析:此賦值表達(dá)式的求解步驟如下 先進(jìn)行“*”的運(yùn)算, 它相當(dāng)于*,a的值為144132。 再進(jìn)行“”的運(yùn)算,相當(dāng)于=a+(-132),a的值為132-132-264。,賦值運(yùn)算符,將賦值表達(dá)式作為表達(dá)式的一種,使賦值操作不僅可以出現(xiàn)在賦值語(yǔ)句中,而且可以以表達(dá)式形式出現(xiàn)在其他語(yǔ)句(如輸出語(yǔ)句、循環(huán)語(yǔ)句等)中. 如:printf(“%d“,a=b);,分析:如果b的值為3, 則輸出a的值(也是表達(dá)式a=b的值)為3。在一個(gè)語(yǔ)句中完成了賦值和輸出雙重功能。,例題: 若有定義語(yǔ)句:int a=3,b=2,c=1;,以下選項(xiàng)中錯(cuò)誤的賦值表達(dá)式是( ) A a=(b=4)=3 B a=b=c+1 C a=(b=4)+c D a=1+(b=c=4),已知int a=6;則執(zhí)行a+=a-=a*a;語(yǔ)句后,a的值為( )。 A 36 B 0 C -24 D -60,自增、自減運(yùn)算符,作用是使變量的值增或減 如: +i,-i(在使用之前,先使的值加(減) i+,i-(在使用之后,使的值加(減),i+與+i的區(qū)別: 是先執(zhí)行后,再使用的值; 是先使用的值后,再執(zhí)行。 例如: ; i的值先變成4, 再賦給,j的值均為 ; 先將 i的值3賦給,的值為,然后變?yōu)?自增、自減運(yùn)算符,注意: (1)自增運(yùn)算符(),自減運(yùn)算符(),只能用于變量,而不能用于常量或表達(dá)式, (2)和的結(jié)合方向是“自右至左”。,自增、自減運(yùn)算符,例題: #include main() int x=011; printf(“%dn“,+x); 程序運(yùn)行后的輸出結(jié)果是( ) A 12 B 11 C 10 D 9,設(shè)有定義
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 血液科病例匯報(bào):骨髓增生異常綜合征與血友病的診療進(jìn)展
- 新年第一課:健康最重要
- 保育員基礎(chǔ)知識(shí)培訓(xùn)教學(xué)課件
- 品管圈在腫瘤內(nèi)科的質(zhì)控管理
- 地鐵列車設(shè)備安全
- Thalictoside-生命科學(xué)試劑-MCE
- 交通運(yùn)輸與物流行業(yè)物流行業(yè)物流園區(qū)物流園區(qū)物流園區(qū)物流金融創(chuàng)新與風(fēng)險(xiǎn)管理報(bào)告
- 初中光的傳播說(shuō)課課件
- 交通運(yùn)輸行業(yè)數(shù)字化轉(zhuǎn)型與供應(yīng)鏈管理優(yōu)化研究報(bào)告
- 冠心病患者的循證護(hù)理
- 衛(wèi)生院用電安全知識(shí)培訓(xùn)
- 2025年陜西精益化工有限公司招聘筆試參考題庫(kù)含答案解析
- 七八年級(jí)的英語(yǔ)單詞
- 舞臺(tái)使用合同范例
- 2024年面向社會(huì)公開(kāi)招聘警務(wù)輔助人員報(bào)名信息表
- 出租屋孩子意外免責(zé)協(xié)議書(shū)
- 《地區(qū)智能電網(wǎng)調(diào)度技術(shù)支持系統(tǒng)應(yīng)用功能規(guī)范》
- 2024中國(guó)類風(fēng)濕關(guān)節(jié)炎診療指南
- 11294營(yíng)銷管理-國(guó)家開(kāi)放大學(xué)2023年1月至7月期末考試真題及答案(共2套)
- 國(guó)家職業(yè)技術(shù)技能標(biāo)準(zhǔn) 6-28-02-01 燃?xì)鈨?chǔ)運(yùn)工 人社廳發(fā)202188號(hào)
- 12-重點(diǎn)幾何模型-手拉手模型-專題訓(xùn)練
評(píng)論
0/150
提交評(píng)論