大一上學(xué)期C語言期末復(fù)習(xí)總結(jié)和模擬試題帶答案_第1頁
大一上學(xué)期C語言期末復(fù)習(xí)總結(jié)和模擬試題帶答案_第2頁
大一上學(xué)期C語言期末復(fù)習(xí)總結(jié)和模擬試題帶答案_第3頁
大一上學(xué)期C語言期末復(fù)習(xí)總結(jié)和模擬試題帶答案_第4頁
大一上學(xué)期C語言期末復(fù)習(xí)總結(jié)和模擬試題帶答案_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、易錯(cuò)點(diǎn)C 語言中易犯的錯(cuò)誤對(duì)初學(xué)C語言的人來說,經(jīng)常會(huì)出一些 連自己都不知道錯(cuò)在哪里的錯(cuò)誤.看著有錯(cuò)的程序,不知該如何改起,一些 C編程時(shí)常犯的錯(cuò)誤,寫給各位學(xué)員以 供參考.*1. 書寫標(biāo)識(shí)符時(shí),忽略了大小寫字母 的區(qū)另U.main()(int a=5;printf("%d",A);編譯程序把a(bǔ)和A認(rèn)為是兩個(gè)不同 的變量名,而顯示出錯(cuò)信息.C認(rèn)為大寫字母和小寫字母是兩個(gè)不 同的字符.習(xí)慣上,符號(hào)常量名用大寫,變量名用小寫表示,以增加 可讀性.*2. 忽略了變量的類型,進(jìn)行了不合法 的運(yùn)算.main()(float a,b;printf("%d",a%b)

2、;%是求余運(yùn)算,得到a/b的整余數(shù).整 型變量a和b可以進(jìn)行求余運(yùn)算,而實(shí)型變量則不允許進(jìn)行”求余 "運(yùn)算.*3. 將字符常量與字符申常量混淆.char c;c="a"在這里就混淆了字符常量與字符申 常量,字符常量是由一對(duì)單引號(hào)括起來的單個(gè)字符,字符申常量 是一對(duì)雙引號(hào)括起來的字符序列.C規(guī)定以""作字符申結(jié)束標(biāo)志,它 是由系統(tǒng)自動(dòng)加上的,所以字符申"a"實(shí)際上包含兩個(gè)字符:'a'和'',而把它賦給一個(gè)字符變量是不行的.*4.忽略了 "="與"="的區(qū)另

3、U.在許多高級(jí)語言中,用"="符號(hào)作為 關(guān)系運(yùn)算符"等于".如在BASIC程序中可以寫if (a=3) then ,但C語言中,"="是賦值運(yùn)算符,"="是關(guān)系運(yùn)算符.如:if (a=3) a=b;前者是進(jìn)行比較,a是否和3相等,后者表小如果a和3相等,把b值賦給a.由于習(xí)慣問題,初學(xué)者往往 會(huì)犯這樣的錯(cuò)誤.*5. 忘記加分號(hào).分號(hào)是C語句中不可缺少的一部分, 語句末尾必須有分號(hào).a=1b=2編譯時(shí),編譯程序在"a=1"后面沒發(fā) 現(xiàn)分號(hào),就把下一行"b=2"也作為上一行語句的

4、一部分,這就 會(huì)出現(xiàn)語法錯(cuò)誤.改錯(cuò)時(shí),有時(shí)在被指出有錯(cuò)的一行中未發(fā)現(xiàn)錯(cuò)誤,就需要看一下上一行是否漏掉了分號(hào).(z=x+y;t=z/100;printf("%f",t);對(duì)于復(fù)合語句來說,最后一個(gè)語句 中最后的分號(hào)不能忽略不寫*6. 多加分號(hào).對(duì)于一個(gè)復(fù)合語句,如:(z=x+y;t=z/100;printf("%f",t);復(fù)合語句的花括號(hào)后不應(yīng)再加分號(hào) 否則將會(huì)畫蛇添足.乂如:if (a%3=0);I+;本是如果3整除a,則I加1.但由于if (a%3=0)后多加了分號(hào),則if語句到此結(jié)束,程序?qū)?zhí)行I+ 語句,不論3是否整除a,I都將自動(dòng)加1.再如:f

5、or (I=0;I<5;I+);scanf("%d",&x);printf("%d",x);本意是先后輸入5個(gè)數(shù),每輸入一個(gè) 數(shù)后再將它輸出.由于for()后多加了一個(gè)分號(hào),使循環(huán)體變?yōu)?空語句,此時(shí)只能輸入一個(gè)數(shù)并輸出它.*7. 輸入變量時(shí)忘記加地址運(yùn)算符"&".int a,b;scanf("%d%d",a,b);這是不合法的.Scanf函數(shù)的作用是:按照a,b在內(nèi)存的地址將a,b的值存進(jìn)去."&a"指a在內(nèi)存中的地 址.*8. 輸入數(shù)據(jù)的方式與要求不符. sca

6、nf("%d%d",&a,&b);輸入時(shí),不能用逗號(hào)作兩個(gè)數(shù)據(jù)問的 分隔符,如下面輸入不合法:3,4輸入數(shù)據(jù)時(shí),在兩個(gè)數(shù)據(jù)之間以一個(gè) 或多個(gè)空格間隔,也可用回車鍵,跳格鍵tab. scanf("%d,%d",&a,&b);C規(guī)定:如果在"格式控制”字符申中除 了格式說明以外還有其它字符,則在輸入數(shù)據(jù)時(shí)應(yīng)輸入與這些 字符相同的字符.下面輸入是合法的:3,4此時(shí)不用逗號(hào)而用空格或其它字符是 不對(duì)的.3 43:4乂如:輸入應(yīng)如以下形式:a=3,b=4*9. 輸入字符的格式與要求不一致.在用"%c"格

7、式輸入字符時(shí),"空格字符"和"轉(zhuǎn)義字符”都作為 有效字符輸入.scanf("%c%c%c",&c1,&c2,&c3);如輸入a b c字符"a"送給c1,字符""送給c2,字符"b"送給c3,因?yàn)?c只要求讀入一個(gè)字符,后面不需要用空格作為兩個(gè)字符的間隔.*10. 輸入輸出的數(shù)據(jù)類型與所用格式 說明符不一致.例如,a已定義為整型,b定義為實(shí)型a=3;b=4.5;printf("%f%dn",a,b);編譯時(shí)不給出出錯(cuò)信息,但運(yùn)行結(jié)果將與原意不

8、符.這種錯(cuò)誤尤其需要注意.*11. 輸入數(shù)據(jù)時(shí),企圖規(guī)定精度.scanf("a=%d,b=%d",&a,&b);這樣做是不合法的,輸入數(shù)據(jù)時(shí)不能scanf("%7.2f",&a);規(guī)定精度.*12. switch 語句中漏寫break語句.例如:根據(jù)考試成績(jī)的等級(jí)打印出白 分制數(shù)段.switch(grade)( case 'A':printf("85100n");case 'B':printf("7084n");case 'C':printf(

9、"6069n");case 'D':printf("<60n");default:printf("errorn");由于漏寫了 break語句,case只起標(biāo)號(hào) 的作用,而不起判斷作用.因此,當(dāng)grade值為A時(shí),printf 函數(shù)在執(zhí)行完第一個(gè)語句后接著執(zhí)行第二,三,四,五個(gè)printf函數(shù)語句. 正確寫法應(yīng)在每個(gè)分支后再加上"break;".例如case 'C':printf("6069n");break;*13. 忽視了 while和do-while

10、語句在 細(xì)節(jié)上的區(qū)別.(1)main()(int a=0,I;scanf("%d",&I);while(I<=10)(a=a+I;I+;printf("%d",a);(2)main()(int a=0,I;scanf("%d",&I);do(a=a+I;I+;while(I<=10);printf("%d",a);可以看到,當(dāng)輸入I的值小于或等于10 時(shí),二者得到的結(jié)果相同.而當(dāng)I>10時(shí),二者結(jié)果就不同了 .因?yàn)?while循環(huán)是先判斷后執(zhí)行,而do-while循環(huán)是先執(zhí)行后判斷

11、.對(duì) 于大于10的數(shù)while循環(huán)一次也不執(zhí)行循環(huán)體,而do-while語句 則要執(zhí)行一次循環(huán)體.*14. 定義數(shù)組時(shí)誤用變量.int n;scanf("%d",&n);int an;數(shù)組名后用方括號(hào)括起來的是常量表 達(dá)式,可以包括常量和符號(hào)常量.即C不允許對(duì)數(shù)組的大小作動(dòng)態(tài)定義.*15. 在定義數(shù)組時(shí),將定義的”元素個(gè) 數(shù)"誤認(rèn)為是可使的最大下標(biāo)值.main()(staticinta10=(1,2,3,4,5,6,7,8,9,10;printf("%d",a10);C語舌規(guī)定:定義時(shí)用a10,表小a數(shù) 組有10個(gè)元素.其下標(biāo)值由0開始

12、,所以數(shù)組元素a10是不存在的.*16. 初始化數(shù)組時(shí),未使用靜態(tài)存儲(chǔ).int a3=(0,1,2;這樣初始化數(shù)組是不對(duì)的.C語言規(guī)定 只有靜態(tài)存儲(chǔ)(static)數(shù)組和外部存儲(chǔ)(exterm)數(shù)組才能初始化.應(yīng)改為:static int a3=(0,1,2;*17. 在不應(yīng)加地址運(yùn)算符&的位置加了地址運(yùn)算符.scanf("%s",&str);C語言編譯系統(tǒng)對(duì)數(shù)組名的處理是:數(shù) 組名代表該數(shù)組的起始地址,且scanf函數(shù)中的輸入項(xiàng)是字符數(shù)組 名,不必要再加地址符&.應(yīng)改為:scanf("%s",str);*18. 同時(shí)定義了形參和

13、函數(shù)中的局部 變量.int max(x,y)int x,y,z;(z=x>y?x:y;return(z);形參應(yīng)該在函數(shù)體外定義,而局部變量應(yīng)該在函數(shù)體內(nèi)定義.應(yīng)改為:int max(x,y)int x,y;(int z;z=x>y?x:y;return(z);試題一一、單項(xiàng)選擇題(共30分,每題1分)C1.下列不正確的轉(zhuǎn)義字符是 'C.074 D.02. 不是C語言提供的合法關(guān)鍵字是A.switch B.cher C.case D. default3.正確的標(biāo)識(shí)符是()A. ?a B.a=2 C.a.3D.a_34. 下列字符中屆于鍵盤符號(hào)的 是 B.n C.t D.b.

14、下列數(shù)據(jù)中屆于“字符申常量” 的 A.ABC B. "ABC C. 'ABC D.'A' 6.char型常量在內(nèi)存中存放的是A.ASCII 碼 B.BCD 碼 C.內(nèi)碼 值D.十進(jìn)制代碼值7. 設(shè)a為5,執(zhí)行下列語句后,b 的值不為2的是()A.b=a/2 B.b=6-(a)C.b=a%2 D.b=a>3 ? 2: 28. 在以下一組運(yùn)算符中,優(yōu)先級(jí) 最高的運(yùn)算符是()9. 設(shè)整型變量i的值為3,則計(jì)算 表達(dá)式i i后表達(dá)式的值是()A.0 B.1 C. 2 D. 表達(dá) 式出錯(cuò)10. 設(shè)整型變量a, b, c均為2,表達(dá)式a+b+c+勺結(jié)果是()A.6

15、B.9 C.8 D. 表達(dá)式 出錯(cuò)11. 若已定義x和y為double類 型,則表達(dá)式x=1, y=x+3/2的值是()A.1B.2C.2.0D.2.512.設(shè) a=1, b=2, c=3, d=4,則表達(dá)式: a<b? a: c<d? a: d 的結(jié)果是()A.4 B.3 C.2D.113. 設(shè)a為整型變量,不能正確表 達(dá)數(shù)學(xué)關(guān)系:10<a<15的C語言'表達(dá)式 是()A.10<a<15 B.a= =11 | a= =12 | a= =13 | a= =14C.a>10&&a<15 D. ! (a<=10) &am

16、p;& (a>=15)14. 若有以下定義:char a、int b、float c 、double d ,則表達(dá) 式a*b+d-c值的類型為()A.float B.int C.charD.double15. 表達(dá)式“10! =9”的值是()A.true B.非零A.<= B.=C.%D.&&值 C.0D.116. 循環(huán)語句 for(x=0, y=0;(y! =123) |(x<4) ; x+);的循環(huán)執(zhí)行()A.無限次B.不確定次 C.4 次 D.3次17. 在C語言中,下列說法中正確的是()A. 不能使用“do while ”的循環(huán)B. “do w

17、hile ”的循環(huán)必須使用 break語句退出循環(huán)C. “do while ”的循環(huán)中,當(dāng)條 件為非0時(shí)將結(jié)束循環(huán)D. “do while ”的循環(huán)中,當(dāng)條 件為0時(shí)將結(jié)束循環(huán)。18. 設(shè)a, b為字符型變量,執(zhí)行scanf ( “a=%c b=%6 , &a, &b)后 使a為A' , b為B',從鍵盤上的 正確輸入是()A. int a= “string " ; B.int a5=0 , 1, 2, 3, 4, 5;C.char a=“ string ” ; D.char a=0 , 1, 2, 3, 4, 522.函數(shù)調(diào)用 strcat (str

18、cpy(str1 , str2 ) , str3 )的功能是()A. 將字符申str2復(fù)制到字符申 str1中后再將字符申str3連接到字符 申str1之后B. 將字符申str1復(fù)制到字符申 str2中后再連接到字符申str3之后C. 將字符申str1復(fù)制到字符申 str2中后再復(fù)制到字符申str3之后D. 將字符申str2連接到字符申 str1中后再將字符申str1復(fù)制到字符 申str3中23.設(shè)有如下定義,則正確的敘述為A. 'A''B'B.'A','B'C.A=A , B=B D.a=A, b=B19.設(shè)i , j , k均

19、為int型變量,執(zhí)行完下面的for循環(huán)后,k的值為charx=“abcdefg ” ;chary=<a,, < b,,'c' , 'd' , 'e' , 'f' , 'g' ;for (i=0 , j=10 ; i<=j ; i+ , j )k=i+j ;A. 10 B.9 C.8 D.720. 設(shè)有定義:chars12= “string ” ;則 printf(“dn”,strlen (s);的輸出 是()A. 6B.7 C.11 D.1221. 合法的數(shù)組定義是()A. 數(shù)組x和數(shù)組y等 價(jià)B

20、. 數(shù)組x和數(shù)組y的長度相同C. 數(shù)組x的長度大于數(shù)組y的長 度D. 數(shù)組x的長度小于數(shù)組y的長 度24.設(shè)有單精度變量f ,其值為 13.8.執(zhí)行語句 " n= ( (int ) f) %3 后,n的值是()p=a;A.4B.1C.4.333333 D.4.625.執(zhí)行語句 “f= (3.0 , 4.0,5.0 ), (2.0 ,1.0 , 0.0); ” 后,單精度變量f的值是()A.3.0 B.5.0C.2.0D.0.026.設(shè)a、b均為整型變量,下歹U 表達(dá)式中不是賦值表達(dá)式的是(>A.a=3, 4,5 B.a=3*2 C.a=a&&b D.a= b=4

21、27. 表達(dá)式 “1? (0? 3: 2) : (10?1: 0) ”的值為()A.3B.2C.1 D.028. sizeof (double )的結(jié)果值是()A.8B.4 C.2 D. 出錯(cuò)29. 指出下面正確的輸入語句是( )A.scanf ( "a=b=%d , &a,&b) ; B.scanf ( “a=%d b=%f', &m &f);C.scanf ( “3$ ,c) ;D.scanf (“5.2f,&f);30. 若有以下定義和語句,且0<=i<5,則()是對(duì)數(shù)組元素地址的正確表示int a=1, 2, 3,

22、4, 5, *p ,i ;A.&(a+i) B.&p C.a+D.&pi二、填空(20分,每空1分)1.在內(nèi)存中存儲(chǔ)“ A”要占用(2)個(gè)字節(jié),存儲(chǔ)A'要占用(1)字節(jié)。2. 符號(hào)常量的定義方法是(#define 符號(hào)常量 常 量 )。3. 能表述 “20<x<30 或 xv-100”的C語言表達(dá)式是(x>20 &&x<30)| x<-100)。4. 結(jié)構(gòu)化程序設(shè)計(jì)方法規(guī)定程序 或程序段的結(jié)構(gòu)有三種:順序結(jié)構(gòu)、(分支結(jié)構(gòu))和(循環(huán)結(jié)構(gòu) )。5. C語言共提供了三種用于實(shí)現(xiàn) 循環(huán)結(jié)構(gòu)的流程控制語句,它們是(while

23、)、 ( do-while )和 (for )。6. 若在程序中用到“ putchar ”, 應(yīng)在程序開頭寫上包含命令(.#include “stdio.h ”),若在程序中用到“ strlen () ”函數(shù) 時(shí),應(yīng)在程序開頭寫上包含命令(# include “string.h "7.設(shè)有定義語句" static int a34=1,2 ,3 ”,則 a11值為(),a21的值為8. “* ”稱為(指針運(yùn)算符 運(yùn)算符,"&”稱為(地址運(yùn)算符 運(yùn)算符。9. 賦值表達(dá)式和賦值語句的區(qū)別 在于有無(分號(hào) )號(hào)。10. 用把一些語句括起來稱為(.復(fù)合語句)語句11

24、. 設(shè) a=12、b=24、c=36,對(duì)于 “scanf (” a=%d b=%d c=%d“,&a, &b, &c); ”,輸入形式應(yīng)為(a=12, b=24, c=36)12. 表達(dá)式 “ sqrt (s* (s-a ) * (s-b )*(s-c );”對(duì)應(yīng)的數(shù)學(xué)式子為()13. C語言編繹系統(tǒng)在判斷一個(gè)量 是否為“真”時(shí),以0代表“假”, 以(非0 )代表“真”三、讀程序(30分)1. main () int a=10 , b=4, c=3;if(a<b) a=b ;if(a<c) a=c ;printf ( “d %d %d , a, b, c)

25、; 2. main ()int y=9;for (; y>0; y)if (y%3= 0) printf ( “d , y) ; continue ; 3. main () int x , y;for(y=1, x=1 ; y<=50; y+) if(x>=10) break ;if(x%2= =1) x+=5 ;continue ; x-=3;printf ( “d , y) 4. main () static int a3=9, 7, 5,3, 1, 2, 4, 6, 8;int i , j , s1=0, s2=0; i , j , s1=0, s2=0;for(i=0

26、 ; i<3 ; i+ )for(j=0 ; j<3 ; j+ ) if (i= =j ) s1=s1+aij;if (i+j= =2 ) s2=s2+aij;printf5. mainstatic'*' , ' *int i ,(“dn%drf , s1, s2) ;()char a= '*' ,,*',,*' ;,k;for (i=0 ; i<5 ; i+ )printf ( "n”);for (j=0 ; j<i ; j+) printf(“$ ,'');for (k=0; k<

27、;5; k+) printf(“6 , ak ) ; 6. int fac (int n )(static int f=1;6.#include“stdio.h ”#include“string.h ”f=f*n ; return(f) ; main ()(int i ;for (i=1 ; i<=5 ; i+ )printf ( “d =%dn”,i , fac(i) ) ; 7. a11=0, a21=08. *指針運(yùn)算符,&地址運(yùn)算符9. 分號(hào);10. 復(fù)合語句11. a=12, b=24, c=36四、編寫程序(20分)13.非 01.編一個(gè)程序,輸入X的值,按三、讀程序

28、(30分)下列公式計(jì)算并輸出Y的值2.編程序按下列公式計(jì)算e的值(精度為1e-6)1. 結(jié)果:10, 4, 32. 結(jié)果:8 5 2e=1+1/1 ! +1/2 ! +1/3 ! +,1/n !3.6參考答案:4.18 10一、單項(xiàng)選擇題(共30分,每題5*1分)1.C 2. B 3. D 4. A 5. B 6.A 7. C 8. C 9. A 10. A 11.6.5 ! =120四、編寫程序(20分1. Main ()C 12. D 13. A 14. D 15. D 16.C 17. D 18. D 19. A 20. B 21.(int x , y;D 22. A 23. C 24.

29、 B 25. D 26.D 27. B 28. A 29. B 30. Cscanf ( “d , &x);;二、填空(20分,每空1分)if (x<=1) y=x ; (x<=1) y=x ;1.2 , 1else if (x>1&&x<10 y=2*x-1 ;2.#define符號(hào)常重常重else y=3*x-11 ;3. (x>20 && x<30) | x<-100printf( “x=%d y=%dn” , x,4. 分支結(jié)構(gòu),循環(huán)結(jié)果5. while do fory);bsp;2.Main ()(fl

30、oat E ;int n ;s=0; E=1;試題二一、單項(xiàng)選擇題(每小題2分,共50 分)1、 一個(gè)C程序的執(zhí)行是從A oA、本程序的main函數(shù)開始,到main 函數(shù)結(jié)束B、本程序的main函數(shù)開始,到本 程序文件的最后一個(gè)函數(shù)結(jié)束C、本程序文件的第一個(gè)函數(shù)開始, 到本程序文件的最后一個(gè)函數(shù)結(jié)束D、本程序文件的第一個(gè)函數(shù)開始, 到本程序main函數(shù)結(jié)束2、 C語言程序的基本單位是 C oA 、 程 序 行B、語句C 、函 數(shù)»字符3、請(qǐng)選出可用作C語言用戶標(biāo)識(shí)符的組標(biāo)識(shí)符 B oA、voidB、a3_b3C、For D 、2adefine_123-abcDOWORDIFasesi

31、zeof4、假定x和y為double型,則表達(dá) 式(x=2,y=x+5/2)的值是 _C_。A、4.500000B、4C、4.000000D> 2.0000005、下列可以正確表示字符型常量的是D=A、297B、"a"C、"n"D> 't'6、在C語言中,要求運(yùn)算數(shù)必須是整型的運(yùn)算符是_D_>A 、/B、+C 、 *=D、 %7、C語言中,復(fù)合語句的構(gòu)成是將一系歹0語句置于_C_oA、begin 與 end 之間B、方框號(hào)“”之間C、花括號(hào)“ ”之間D、圓括號(hào)“()”之間8、有如下程序段,對(duì)應(yīng)正確的數(shù)據(jù)輸入是 A ofl

32、oat x,y;scanf( ” f%f,&x,&y);printf( ” a=%f,b=%f”,x,y);A 、2.04< 回 車 >B、2.04,5.67< 回車>5.67< 回車>C、A=2.04,B=5.67< 回車 >D> 2.045.67< 回車 >9、以下程序段的輸出結(jié)果是 Dint a=5678;printf( " %2dn" , a);A 、提示出錯(cuò)、無結(jié)果B、56C、78D> 567810、已知:char ch='A';則下歹U表達(dá)式的值是_B_。ch

33、 = (ch>='A'&&ch<='Z')?(ch+32) : ch;A、A B 、a C 、Z D 、z11、下列描述,正確的是 B_。A、表達(dá)式3.91%5是合法的B、用b=89作為while循環(huán)的條件是合法的C、逗號(hào)表達(dá)式是沒有值和類型的字符型變量和int型變量的操作完全不同12、閱讀以下程序:main()(int x;scanf("%d",&x);if(x-<5) printf("%d",x);else printf("%d",x+);程序運(yùn)行后,如果從

34、鍵盤上輸人5, 則輸出結(jié)果是_B_。A 、3B、4C、5 D 、613、下列程序的運(yùn)行結(jié)果是C_#include ” stdio.h ”main()(int k;k=3;switch(k)(case 1: printf(” dn”,k+);case 2: printf(” dn”,k+);case 3: printf(” dn”,k+);case 4: printf(” dn”,k+);break;default:printf(”Full!n ” );A、3B、4C、3D、44414、設(shè) a、b、c、d、m n均為int型變量,且a=5、b=6、c=7、d=8、m=2 、n=1 ,則邏輯表達(dá)式

35、 (m=a<b)&&(n=c<d)的值為 A 。A 、0 B 、1 C 、2D> 315、設(shè) x、y 和 temp 均為 long int 型變量,則以下語句:(temp=x; x=y; y=temp;的功能是DoA、把x和y按從大到小排列B、把x和y按從小到大排列C、無確定結(jié)果CK交換變量x和變量y的值16、 以下程序的輸出結(jié)果是 A_。main()(int a, b;for(a=1, b=1; a<=100; a+)(if(b>=10) break;if (b%3=1)(b+=3; continue; printf("%dn"

36、;,a);A 、4B、6C、5 D 、10117、執(zhí)行以下程序后輸出的結(jié)果是Dmain()(int y=10;do (y-;while(-y);printf("%dn",y-);A、-1B、1C、8» 018、執(zhí)行以下程序后輸出的結(jié)果是B=main()(int i, j, w=0;for(i=4; i; i-)for(j=1;j<=2;j+)w=w+i*j; w=i*j;printf("%dn",w);A、4B、0C、1 D 、3019、以下程序運(yùn)行后,輸出結(jié)果是_C=main()(int n5=(3,3,3,i,k=2;for(i=0;

37、i<k;i+) ni=ni+1;printf("%dn",nk);A、4B、9C、3 D 、不確定的值20、以下程序的輸出結(jié)果是_A_。f( int a)(int b=0;static int c = 3;b+; c+;return(a+b+c);main()(int a = 2, i;for(i=0;i<3;i+) printf("%dn",f(a);A 、7 B 、7 C 、7 D 、78 91079 1113721、設(shè)C程序如下:#define ABC(x) x*x#include"stdio.h"main()(in

38、t a=3,b;b=ABC(a+1);printf("b=%d", b); 上述程序運(yùn)行輸出的結(jié)果是D_。A、B、b=a+1C、D b=722、以下程序的輸出結(jié)果是main()(int i, a10;for(i=9;i>=0;i-) ai=10-i;printf("%d %d %d",a1,a6,a9 );A 、169b=4 b=16 B 。B、9 4 1C 、961D 3 5 723、若定義:float x=3.14159 , *p=&x;貝U printf("%fn",*p+);的輸出結(jié)果為C。A 、無 確 定 值B

39、、x的地址C、3.14159» 4.1415924、以下程序的輸出結(jié)果是 B_main()(char b="Language"char *p=b;printf("%c ",*(b+2);p=p+7;printf("%cn",*p+);A、27B、n eC、a g D 、n u25、 下列程序的輸出結(jié)果是A。#include "stdio.h" main() (int a=(1,2,3,4,5,6,7,8,9,0, i, s, *p;p=a;s=0;for(i=0;i<=9;i+) s+=*p+;printf("%dn", s); A、45B、44C、0 D 、9二、判斷題(每小題1分,共10分)1 .語句 int *point ;中的 point 是指針變量名。(T )2 .主函數(shù)和其它函數(shù)之間可以相互調(diào)用。(F )3 . puts()和gets()函數(shù)只能輸入或輸出一個(gè)字符。(F )4 .可以對(duì)字符型數(shù)組元素進(jìn)行整體輸入、輸出。(T )5 . do-while語句構(gòu)成的循環(huán)不能用其他語句構(gòu)成的循環(huán)來代替。(F )6 .在一個(gè)函數(shù)內(nèi)的復(fù)合語句中定義的變量可以在本函數(shù)范圍內(nèi)有效(F )7 .函數(shù)必須

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論