【答案】《C語言學(xué)習(xí)輔導(dǎo)與習(xí)題課》(北京化工大學(xué))章節(jié)作業(yè)中國大學(xué)慕課答案_第1頁
【答案】《C語言學(xué)習(xí)輔導(dǎo)與習(xí)題課》(北京化工大學(xué))章節(jié)作業(yè)中國大學(xué)慕課答案_第2頁
【答案】《C語言學(xué)習(xí)輔導(dǎo)與習(xí)題課》(北京化工大學(xué))章節(jié)作業(yè)中國大學(xué)慕課答案_第3頁
【答案】《C語言學(xué)習(xí)輔導(dǎo)與習(xí)題課》(北京化工大學(xué))章節(jié)作業(yè)中國大學(xué)慕課答案_第4頁
【答案】《C語言學(xué)習(xí)輔導(dǎo)與習(xí)題課》(北京化工大學(xué))章節(jié)作業(yè)中國大學(xué)慕課答案_第5頁
已閱讀5頁,還剩41頁未讀 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

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

文檔簡(jiǎn)介

第一章C程序初步第一章測(cè)驗(yàn)——客觀題1.單選題:下列變量名中合法的是:

選項(xiàng):

A、3a6b

B、B.C.Tom

C、_6a7b

D、$ABC

答案:【_6a7b】2.單選題:正確的定義變量的語句是:

選項(xiàng):

A、intab_;

B、int–ab;

C、charmm

D、floata3.b;

答案:【intab_;】3.單選題:以下程序的輸出結(jié)果是:#includeintmain(){inta=12,b=12;printf("%d%d\n",--a,b++);return0;}

選項(xiàng):

A、1011

B、1113

C、1110

D、1112

答案:【1112】4.單選題:以下不是合法的C語言常量的是:

選項(xiàng):

A、0x5C

B、5e2.8

C、031

D、“123”

答案:【5e2.8】5.單選題:在Dev-c++環(huán)境中,float類型的數(shù)據(jù)需要占用()字節(jié)內(nèi)存空間

選項(xiàng):

A、1

B、2

C、4

D、8

答案:【4】6.單選題:若有以下定義和語句:charc1='b',c2='e';printf("%d,%c\n",c2-c1,c2-'a'+'A');則輸出結(jié)果是:

選項(xiàng):

A、2,M

B、3,E

C、2,E

D、輸出項(xiàng)與對(duì)應(yīng)的格式控制不一致,輸出結(jié)果不確定

答案:【3,E】7.單選題:以下合法的C語言字符常量是:

選項(xiàng):

A、”a”

B、’\t’

C、’65’

D、a

答案:【’\t’】8.單選題:下列都是合法轉(zhuǎn)義字符的選項(xiàng)是:

選項(xiàng):

A、’\’’‘\\’‘\n’

B、‘\’‘\017’‘\”’

C、‘\018’‘\f’‘xab’

D、’\\0’‘\101’‘x1f’

答案:【’\’’‘\\’‘\n’】9.單選題:以下語句:temp=x;x=y;y=temp;的功能是:

選項(xiàng):

A、把x,y,temp從小到大排列;

B、把x,y,temp從大到小排列;

C、交換x,y的值;

D、無確定的結(jié)果。

答案:【交換x,y的值;】10.單選題:若已定義x和y為double類型,則表達(dá)式:x=1,y=x+3/2的值是:

選項(xiàng):

A、1

B、2

C、2.0

D、2.5

答案:【2.0】11.單選題:C語言的語句都是以()結(jié)束。

選項(xiàng):

A、.

B、空格

C、;

D、#

答案:【;】12.單選題:閱讀下面的程序:#includeintmain(){charch;scanf("%c%c",&ch,&ch);printf("%c",ch);return0;}如果從鍵盤輸入:1+2<回車>則程序的運(yùn)行結(jié)果是:

選項(xiàng):

A、1

B、+

C、2

D、3

答案:【+】13.單選題:已知字母a的ASCII碼為十進(jìn)制的97,下面程序的輸出結(jié)果是:#includeintmain(){charch1,ch2;ch1='a'+'3'-'1';ch2='a'+'2'-'2';printf("%d,%c\n",ch1,ch2);return0;}

選項(xiàng):

A、99,a

B、99,97

C、c,97

D、不確定的值

答案:【99,a】14.單選題:下列選項(xiàng)中表示整型數(shù)據(jù)的是:

選項(xiàng):

A、1e-5

B、"1"

C、'haha'

D、0xaf

答案:【0xaf】15.單選題:能正確表示“當(dāng)x的取值在[1,10]或[100,110]范圍內(nèi)為真,否則為假”的表達(dá)式是:

選項(xiàng):

A、(x>=1)&&(x<=10)&&(x>=100)&&(x<=110)

B、(1<=x<=10)||(100<=x<=110)

C、(x>=1)&&(x<=10)||(x>=100)&&(x<=110)

D、(x>=1)||(x<=10)&&(x>=100)||(x<=110)

答案:【(x>=1)&&(x<=10)||(x>=100)&&(x<=110)】16.單選題:C語言中,運(yùn)算對(duì)象必須是整型的運(yùn)算符是:

選項(xiàng):

A、%

B、/

C、%和/

D、*

答案:【%】17.單選題:以下不合法的用戶標(biāo)識(shí)符是:

選項(xiàng):

A、j2_KEY

B、dobule

C、4d

D、_8_

答案:【4d】18.單選題:以下程序的輸出結(jié)果是:#includeintmain(){intk=17;printf("%d,%o,%x\n",k,k,k);return0;}

選項(xiàng):

A、17,021,0x11

B、17,17,17

C、17,0x11,021

D、17,21,11

答案:【17,21,11】19.單選題:有以下程序#include#includeintmain(){inta,c=246;a=c/10%10;printf("%d",a);return0;}輸出結(jié)果是:

選項(xiàng):

A、2

B、4

C、6

D、9

答案:【4】20.單選題:設(shè)x、y、z和k都是int型變量,則執(zhí)行表達(dá)式x=(y=4,z=16,k=32)后,x的值為:

選項(xiàng):

A、4

B、16

C、32

D、52

答案:【32】21.單選題:可在C語言中用作用戶標(biāo)識(shí)符的一組標(biāo)識(shí)符是:

選項(xiàng):

A、voiddefineword

B、as_b3_123ff

C、for_abccase

D、2cdosig

答案:【as_b3_123ff】22.單選題:下列變量定義語句中錯(cuò)誤的是:

選項(xiàng):

A、intMBK_do

B、chardog1

C、float_sky

D、int2ab

答案:【int2ab】23.單選題:閱讀下列程序,當(dāng)輸入數(shù)據(jù)的形式為25,13,10<回車>,程序的輸出結(jié)果為:#includeintmain(){intx,y,z;scanf("%d%d%d",&x,&y,&z);printf("x+y+z=%d\n",x+y+z);return0;}

選項(xiàng):

A、x+y+z=48

B、x+y+z=35

C、x+z=35

D、不確定值

答案:【不確定值】24.單選題:下列語句執(zhí)行后,b的值是:chara='5',b=(char)(a+3);

選項(xiàng):

A、'8'

B、8

C、56

D、53

答案:【'8'】25.單選題:C語言中的標(biāo)識(shí)符只能由字母、數(shù)字和下畫線組成,且第一個(gè)字符

選項(xiàng):

A、可以是字母、數(shù)字和下畫線中的任一種字符

B、必須為字母

C、必須為數(shù)字

D、必須為下畫線或字母

答案:【必須為下畫線或字母】26.單選題:表達(dá)式35/3%3的值是:

選項(xiàng):

A、11

B、2

C、3

D、0

答案:【2】27.單選題:已知:intx,y;floatz;則以下輸入語句錯(cuò)誤的是:

選項(xiàng):

A、scanf("%d,%d,%f",&x,&y,&z);

B、scanf("%d%d%f",&x,&y,&z);

C、scanf("%d%d%f",&x,&y,&z);

D、scanf("%d%d%6.2f",&x,&y,&z);

答案:【scanf("%d%d%6.2f",&x,&y,&z);】28.單選題:可在C語言中用作用戶標(biāo)識(shí)符的一組標(biāo)識(shí)符是:

選項(xiàng):

A、voiddefineword

B、as_b3_123ff

C、for_abccase

D、2cdosig

答案:【as_b3_123ff】29.單選題:以下程序運(yùn)行的結(jié)果是:#includeintmain(){intm=5,n=10;printf("%d,%d\n",m++,--n);return0;}

選項(xiàng):

A、5,9

B、6,9

C、5,10

D、6,10

答案:【5,9】30.單選題:根據(jù)以下定義語句和數(shù)據(jù)的輸入方式,scanf語句的正確形式應(yīng)為:已有定義:floatf1,f2;數(shù)據(jù)的輸入方式:4.52<回車>3.5<回車>

選項(xiàng):

A、scanf("%f,%f",&f1,&f2);

B、scanf("%f%f",&f1,&f2);

C、scanf("%3.2f%2.1f",&f1,&f2);

D、scanf("%3.2f%2.1f",&f1,&f2);

答案:【scanf("%f%f",&f1,&f2);】第一章OJ——編程題1.整型數(shù)據(jù)的拆分問題

答案:【題目?jī)?nèi)容:輸入一個(gè)三位數(shù)的正整數(shù)n,分別求出該數(shù)的百位數(shù)b、十位數(shù)s和個(gè)位數(shù)g的數(shù)值并輸出輸入格式:一個(gè)三位正整數(shù)n,100<=n<=999輸出格式:三個(gè)整數(shù),輸出在三行上輸入樣例:345輸出樣例:345】2.字符型數(shù)據(jù)參與運(yùn)算

答案:【題目?jī)?nèi)容:輸入兩個(gè)字符到字符變量a、b中,交換a、b的值,并輸出交換后a、b的值輸入格式:兩個(gè)字符型數(shù)據(jù),用空格分隔輸出格式:輸出交換后的兩個(gè)字符型數(shù)據(jù),用空格分隔輸入樣例:mn輸出樣例:nm】3.求球體的表面積

答案:【題目?jī)?nèi)容:輸入一球體的半徑r,求該球體的表面積S(圓周率使用pi=3.1415)輸入格式:輸入一個(gè)浮點(diǎn)型數(shù)據(jù)r,r>0輸出格式:輸出一個(gè)浮點(diǎn)型數(shù)據(jù)S,保留2位小數(shù)輸入樣例:1輸出樣例:12.57】4.求兩個(gè)整數(shù)之和

答案:【題目?jī)?nèi)容:鍵盤輸入兩個(gè)整數(shù)a、b,求a與b的和并輸出。輸入格式:兩個(gè)整數(shù),用空格隔開輸出格式:一個(gè)整數(shù)輸入樣例:53輸出樣例:8】5.字母的大小寫轉(zhuǎn)換問題

答案:【題目?jī)?nèi)容:輸入一個(gè)小寫字母,將其變成大寫字母并輸出。輸入格式:一個(gè)小寫字母輸出格式:一個(gè)大寫字母輸入樣例:a輸出樣例:A】第二章選擇結(jié)構(gòu)第二章測(cè)驗(yàn)——客觀題1.單選題:執(zhí)行下列語句后b的值為()inta,b,c;a=b=c=1;++a||++b&&++c;

選項(xiàng):

A、0

B、1

C、2

D、錯(cuò)誤

答案:【1】2.單選題:執(zhí)行下列語句后a的值為()inta=5,b=6,w=1,x=2,y=3,z=4;(a=w>x)&&(b=y>z);

選項(xiàng):

A、5

B、0

C、2

D、1

答案:【0】3.單選題:執(zhí)行下列語句后b的值為()inta=5,b=6,w=1,x=2,y=3,z=4;(a=w>x)&&(b=y>z);

選項(xiàng):

A、6

B、0

C、1

D、4

答案:【6】4.單選題:判斷char型變量ch是否為小寫字母的正確表達(dá)式是()

選項(xiàng):

A、’a’<=ch<=’z’

B、(ch>=’a’)&(ch<=’z’)

C、(ch>=’a’)&&(ch<=’z’)

D、(‘a(chǎn)’<=ch)and(‘z’>=ch)

答案:【(ch>=’a’)&&(ch<=’z’)】5.單選題:若有intx=3,y=4,z=5;則下列表達(dá)式中值為0的是()

選項(xiàng):

A、'x'&&'y'

B、x<=y

C、x||y+z&&y-z

D、!((x

答案:【!((x】6.單選題:已知x=43,ch=’a’,y=0;則表達(dá)式(x>=y&&ch<’b’&&!y)的值是()

選項(xiàng):

A、0

B、1

C、語法錯(cuò)誤

D、假

答案:【1】7.單選題:執(zhí)行下列語句后a的值為()inta,b,c;a=b=c=1;++a||++b&&++c;

選項(xiàng):

A、0

B、1

C、2

D、錯(cuò)誤

答案:【2】8.單選題:執(zhí)行下列程序段后,變量a,b,c的值分別為()inta,b,c,x=10,y=9;a=(--x==y++)?--x:++y;b=x++;c=y;

選項(xiàng):

A、a=9,b=9,c=9

B、a=8,b=8,c=10

C、a=9,b=10,c=9

D、a=1,b=11,c=10

答案:【a=8,b=8,c=10】9.單選題:以下程序的輸出結(jié)果是()#includeintmain(){intx=0,y=2,z=3;switch(x){case0:switch(y){case0:printf("*");break;case1:printf("%");break;case2:printf("&");break;}case1:switch(z){case1:printf("$");case2:printf("#");break;default:printf("@");}default:printf("!");}return0;}

選項(xiàng):

A、&@!

B、*

C、%@

D、&!

答案:【&@!】10.單選題:下列條件語句中,功能與其他語句不同的是()

選項(xiàng):

A、if(a)printf("%d\n",x);elseprintf("%d\n",y);

B、if(a==0)printf("%d\n",y);elseprintf("%d\n",x);

C、if(a!=0)printf("%d\n",x);elseprintf("%d\n",y);

D、if(a==0)printf("%d\n",x);elseprintf("%d\n",y);

答案:【if(a==0)printf("%d\n",x);elseprintf("%d\n",y);】11.單選題:有如下程序#includeintmain(){intx=1,a=0,b=0;switch(x){case0:b++;case1:a++;case2:a++;b++;}printf("a=%d,b=%d\n",a,b);return0;}該程序的輸出結(jié)果是()

選項(xiàng):

A、a=2,b=1

B、a=1,b=1

C、a=1,b=0

D、a=2,b=2

答案:【a=2,b=1】12.單選題:為了避免嵌套的if—else語句的二義性,C語言規(guī)定else總是與()組成配對(duì)關(guān)系

選項(xiàng):

A、縮排位置相同的if

B、在其之前未配對(duì)的if

C、在其之前未配對(duì)的最近的if

D、同一行上的if

答案:【在其之前未配對(duì)的最近的if】13.單選題:若運(yùn)行時(shí)給變量x輸入12,則以下程序的運(yùn)行結(jié)果是()#includeintmain(){intx,y;scanf("%d",&x);y=x>12?x+10:x-12;printf("%d\n",y);return0;}

選項(xiàng):

A、0

B、22

C、12

D、10

答案:【0】14.單選題:以下程序的輸出結(jié)果是()#includeintmain(){intk=4,a=3,b=2,c=1;printf("\n%d\n",kcreturn0;}

選項(xiàng):

A、4

B、3

C、2

D、1

答案:【1】15.單選題:若w=1,x=2,y=3,z=4,則表達(dá)式wyz的值是()

選項(xiàng):

A、4

B、3

C、2

D、1

答案:【1】16.單選題:若運(yùn)行下面程序時(shí),給變量a輸入15,則輸出結(jié)果是()。#includeintmain(){inta,b;scanf("%d",&a);b=a>15?a+10:a-10;printf("%d\n",b);return0;}

選項(xiàng):

A、5

B、25

C、15

D、10

答案:【5】17.單選題:以下選項(xiàng)中,兩個(gè)條件語句語義等價(jià)的是()

選項(xiàng):

A、if(a=2)printf("%d\n",a);if(a==2)printf("%\n",a);

B、if(a-2)printf("%d\n",a);if(a!=2)printf("%\n",a);

C、if(a)printf("%d\n",a);if(a==0)printf("%\n",a);

D、if(a-2)printf("%d\n",a);if(a==2)printf("%\n",a);

答案:【if(a-2)printf("%d\n",a);if(a!=2)printf("%\n",a);】18.單選題:關(guān)于switch語句和break語句的描述中,正確的是()

選項(xiàng):

A、在switch語句中必須使用break語句

B、break語句只能用于switch語句中

C、在使用switch語句時(shí),可以根據(jù)需要選擇是否使用break語句

D、break語句是switch語句的一部分

答案:【在使用switch語句時(shí),可以根據(jù)需要選擇是否使用break語句】19.單選題:以下程序的輸出結(jié)果是()#includeintmain(){intx=1,y=0;switch(x){case1:switch(y){case0:printf("first,");break;case1:printf("second,");break;}case2:printf("third");}return0;}

選項(xiàng):

A、first,third

B、first,second,third

C、first,

D、first,second,

答案:【first,third】20.單選題:若執(zhí)行下面的程序時(shí)從鍵盤上輸入3和4,則輸出是()#includeintmain(){inta,b,s;scanf("%d%d",&a,&b);s=a;if(as=s*s;printf("%d\n",s);return0;}

選項(xiàng):

A、14

B、16

C、18

D、20

答案:【16】21.單選題:設(shè)ch是char型變量,其值為A,且有表達(dá)式:ch=(ch>='A'&&ch<='Z')?(ch+32):ch;則表達(dá)式的值是()

選項(xiàng):

A、A

B、a

C、Z

D、z

答案:【a】22.單選題:設(shè)a,b和c都是int型變量,且a=3,b=4,c=5,則表達(dá)式中值為0的表達(dá)式是()

選項(xiàng):

A、'a'&&'b'

B、a

C、a||b+c&&b-c

D、!((a

答案:【!((a】23.單選題:能正確表示a≥10或a≤0的關(guān)系表達(dá)式是()

選項(xiàng):

A、a>=10ora<=0

B、a>=10|a<=0

C、a>=10,a<=0

D、a>=10||a<=0

答案:【a>=10||a<=0】24.單選題:邏輯運(yùn)算符兩側(cè)運(yùn)算對(duì)象的數(shù)據(jù)類型()

選項(xiàng):

A、只能是0或1

B、只能是0或非0正數(shù)

C、只能是整型或字符型數(shù)據(jù)

D、可以是任何類型的數(shù)據(jù)

答案:【可以是任何類型的數(shù)據(jù)】25.單選題:以下程序的輸出結(jié)果是()#includeintmain(){inta=0,b=0,c=0;if(a=b+c)printf("***\n");elseprintf("$$$\n");return0;}

選項(xiàng):

A、有語法錯(cuò)誤不能通過編譯

B、可以通過編譯但不能通過連接

C、***

D、$$$

答案:【$$$】26.單選題:以下程序的輸出結(jié)果是()#includeintmain(){intm=5;if(m++>5)printf("%d\n",m);elseprintf("%d\n",m--);return0;}

選項(xiàng):

A、4

B、5

C、6

D、7

答案:【6】27.單選題:以下程序的輸出結(jié)果是()#includeintmain(){intx=2,y=-1,z=2;if(xif(y<0)z=0;elsez+=1;printf("%d\n",z);return0;}

選項(xiàng):

A、3

B、2

C、1

D、0

答案:【2】28.單選題:以下程序的輸出結(jié)果是()#includeintmain(){inta=1,b=3,c=5,d=4,x;if(aif(c1;elseif(aif(b=2;elsex=3;elsex=6;elsex=7;printf("x=%d",x);return0;}

選項(xiàng):

A、1

B、2

C、3

D、6

答案:【2】29.單選題:能正確表示“當(dāng)x的取值在[1,10]和[200,210]范圍內(nèi)為真,否則為假”的表達(dá)式是()

選項(xiàng):

A、(x>=1)&&(x<=10)&&(x>=200)&&(x<=210)

B、(x>=1)||(x<=10)||(x>=200)||(x<=210)

C、(x>=1)&&(x<=10)||(x>=200)&&(x<=210)

D、(x>=1)||(x<=10)&&(x>=200)||(x<=210)

答案:【(x>=1)&&(x<=10)||(x>=200)&&(x<=210)】30.單選題:若有:inta=1,b=2,c=3,d=4,m=2,n=2;則執(zhí)行(m=a>b)&&(n=c>d)后n的值是()

選項(xiàng):

A、1

B、2

C、3

D、4

答案:【2】31.單選題:以下程序的輸出結(jié)果是()#includeintmain(){inta,b,d=241;a=d/100%9;b=(-1)&&(-1);printf(“%d,%d”,a,b);return0;}

選項(xiàng):

A、6,1

B、2,1

C、6,0

D、2,0

答案:【2,1】32.單選題:若有intx=10,y=20,z=30;以下語句執(zhí)行后x,y,z的值是()if(x>y)z=x;x=y;y=z;

選項(xiàng):

A、x=10,y=20,z=30

B、x=20,y=30,z=30

C、x=20,y=30,z=10

D、x=20,y=30,z=20

答案:【x=20,y=30,z=30】第二章OJ——編程題1.學(xué)生成績(jī)判斷

答案:【題目?jī)?nèi)容:輸入一個(gè)學(xué)生成績(jī),如果合格(>=60)輸出pass,不合格輸出failure。輸入格式:輸入一個(gè)整數(shù)(0—100之間)輸出格式:按題目要求輸出輸入樣例:60輸出樣例:pass】2.4的倍數(shù)

答案:【題目?jī)?nèi)容:輸入一個(gè)正整數(shù),若該正整數(shù)是4的倍數(shù),則顯示“OK”,否則顯示“NO”。輸入格式:輸入一個(gè)正整數(shù)輸出格式:按題目要求輸出輸入樣例:100輸出樣例:OK】3.字符類型判斷

答案:【題目?jī)?nèi)容:從鍵盤輸入一個(gè)字符,判斷該字符的類型(數(shù)字、大寫字母、小寫字母、其他類型)。輸入格式:輸入一個(gè)字符輸出格式:按題目要求輸出。輸入樣例:1輸出樣例:數(shù)字】4.三個(gè)數(shù)排序

答案:【題目?jī)?nèi)容:輸入三個(gè)整數(shù)a、b、c,按從小到大的順序輸出。輸入格式:輸入三個(gè)整數(shù),鄰近兩數(shù)之間用一個(gè)空格隔開輸出格式:輸出數(shù)據(jù)鄰近兩數(shù)之間用一個(gè)空格隔開輸入樣例:3001-12輸出樣例:-121300】5.計(jì)算總金額

答案:【題目?jī)?nèi)容:某超市商品打折促銷。假定購買某商品的數(shù)量為x件,折扣情況如下:由鍵盤輸入商品的價(jià)格和購買的數(shù)量,編程計(jì)算購買x件商品應(yīng)付總金額。要求用switch語句編程實(shí)現(xiàn)。輸入格式:價(jià)格件數(shù),兩數(shù)之間用一個(gè)空格隔開,價(jià)格為浮點(diǎn)數(shù),件數(shù)為正整數(shù)輸出格式:保留小數(shù)點(diǎn)后2位輸入樣例:10.02輸出樣例:20.00】第三章循環(huán)結(jié)構(gòu)第三章測(cè)驗(yàn)——客觀題1.單選題:循環(huán)語句中,如果第一次循環(huán)條件不成立時(shí),循環(huán)體還會(huì)執(zhí)行一次的是()

選項(xiàng):

A、for語句

B、while語句

C、do-while語句

D、其他三個(gè)答案都可以

答案:【do-while語句】2.單選題:語句while(a);中的條件a等價(jià)于()

選項(xiàng):

A、a==0

B、a!=0

C、a==1

D、a=1

答案:【a!=0】3.單選題:若變量k為整型,則下面的while循環(huán)執(zhí)行()次。k=2;while(k==0)printf("%d",k);k--;printf(“\n”);

選項(xiàng):

A、10

B、9

C、0

D、1

答案:【0】4.單選題:若i和k都是整型變量,for語句如下,則下面描述正確的是()for(i=0,k=-1;k=1;k++)printf("********\n");

選項(xiàng):

A、循環(huán)體執(zhí)行兩次

B、循環(huán)體執(zhí)行一次

C、循環(huán)體一次也不執(zhí)行

D、構(gòu)成無限循環(huán)

答案:【構(gòu)成無限循環(huán)】5.單選題:以下程序中,while循環(huán)的次數(shù)是()#includeintmain(){inti=0;while(i<10){if(i<1)continue;if(i==5)break;i++;}return0;}

選項(xiàng):

A、1

B、死循環(huán),不能確定次數(shù)

C、6

D、10

答案:【死循環(huán),不能確定次數(shù)】6.單選題:對(duì)于for(表達(dá)式1;;表達(dá)式3)可理解為()

選項(xiàng):

A、for(表達(dá)式1;1;表達(dá)式3)

B、for(表達(dá)式1:1;表達(dá)式3)

C、for(表達(dá)式1;表達(dá)式1;表達(dá)式3)

D、for(表達(dá)式1;表達(dá)式3;表達(dá)式3)

答案:【for(表達(dá)式1;1;表達(dá)式3)】7.單選題:以下正確的描述是()

選項(xiàng):

A、continue語句的作用是結(jié)束循環(huán)

B、break語句可以在循環(huán)體或者switch語句中使用

C、break語句的作用是結(jié)束本次循環(huán)

D、continue語句和break語句的作用相同

答案:【break語句可以在循環(huán)體或者switch語句中使用】8.單選題:在C語言中,執(zhí)行語句:for(j=1;j++<4;);后,變量j的值是()

選項(xiàng):

A、3

B、4

C、5

D、不確定值

答案:【5】9.單選題:下述程序段執(zhí)行后,輸出的結(jié)果是()#includeintmain(){inta,b;for(a=1,b=1;a<=100;a++){if(b>=10)break;if(b%3==1){b+=3;continue;}}printf("%d",a);return0;}

選項(xiàng):

A、4

B、5

C、6

D、101

答案:【4】10.單選題:已知i,j,w為整型變量,且w=0,則下述程序段執(zhí)行后,w的值是()for(i=4;i!=0;i--)for(j=1;j<=2;j++)w=w+i*j;w=i*j;

選項(xiàng):

A、4

B、0

C、1

D、30

答案:【0】11.單選題:設(shè)n為整型變量,則循環(huán)語句for(n=10;n>0;n--)的循環(huán)次數(shù)為()

選項(xiàng):

A、10

B、9

C、11

D、12

答案:【10】12.單選題:下面程序的運(yùn)行結(jié)果是()#includeintmain(){intnum=0;while(num<=2){num++;printf("%d",num);}return0;}

選項(xiàng):

A、1

B、12

C、123

D、1234

答案:【123】13.單選題:已知在main()函數(shù)中定義了整型變量i,則下面程序段的執(zhí)行結(jié)果是()for(i=0;i<10;i++)if(i<=5)break;printf("%d",i);

選項(xiàng):

A、0

B、1

C、5

D、10

答案:【0】14.單選題:已知n為整型變量,則下述循環(huán)程序段執(zhí)行后,n的值是()for(n=0;n<100;n=2*n+1);printf("%d",n);

選項(xiàng):

A、125

B、126

C、127

D、128

答案:【127】15.單選題:以下關(guān)于for語句的說法不正確的是()

選項(xiàng):

A、for循環(huán)只能用于循環(huán)次數(shù)已經(jīng)確定的情況

B、for循環(huán)是先判斷表達(dá)式,后執(zhí)行循環(huán)體語句

C、for循環(huán)中,可以用break語句跳出循環(huán)體

D、for循環(huán)體語句中,可以包含多條語句,但是要用花括號(hào)括起來

答案:【for循環(huán)只能用于循環(huán)次數(shù)已經(jīng)確定的情況】16.單選題:設(shè)已定義k為int型變量,則下面while循環(huán)執(zhí)行()k=10;while(k==1)k-=1;

選項(xiàng):

A、執(zhí)行10次

B、無限循環(huán)

C、執(zhí)行一次

D、一次也不執(zhí)行

答案:【一次也不執(zhí)行】17.單選題:設(shè)已定義k為int型變量,則下面while循環(huán)執(zhí)行()k=10;while(k=1)k-=1;

選項(xiàng):

A、執(zhí)行10次

B、無限循環(huán)

C、一次也不執(zhí)行

D、執(zhí)行一次

答案:【無限循環(huán)】18.單選題:下面關(guān)于for循環(huán)語句描述正確的是()

選項(xiàng):

A、for循環(huán)不能用于循環(huán)次數(shù)未知的情況

B、for循環(huán)語句執(zhí)行時(shí)是先執(zhí)行循環(huán)體語句,后判斷表達(dá)式

C、不能使用break語句結(jié)束for循環(huán)語句

D、使用for語句構(gòu)成的循環(huán)結(jié)構(gòu),當(dāng)循環(huán)體語句是多條語句時(shí),循環(huán)體語句需要用{}括起來

答案:【使用for語句構(gòu)成的循環(huán)結(jié)構(gòu),當(dāng)循環(huán)體語句是多條語句時(shí),循環(huán)體語句需要用{}括起來】19.單選題:設(shè)有整型變量x,下述語句()不會(huì)出現(xiàn)死循環(huán)

選項(xiàng):

A、for(;;x+=1);

B、for(;(x=getchar())!='\n';);

C、while(1){x++;}

D、for(x=10;;x--);

答案:【for(;(x=getchar())!='\n';);】20.單選題:已知整型變量a=1,b=2,c=2,t為整型變量,則下述循環(huán)執(zhí)行后a,b,c的值是()while(a{t=a;a=b;b=t;c--;}

選項(xiàng):

A、120

B、210

C、121

D、211

答案:【120】21.單選題:如果在main函數(shù)中,i是已經(jīng)定義好的整型變量,則下面循環(huán)執(zhí)行后的輸出結(jié)果是()for(i=1;i<=5;i++){if(i%2)printf("*");elsecontinue;printf("#");}

選項(xiàng):

A、*#*#*#

B、#*#*#*

C、*#*#

D、#*#*

答案:【*#*#*#】22.單選題:已知整型變量x的初值為23,則以下循環(huán)程序執(zhí)行后將輸出()do{printf("%d",x--);}while(!x);

選項(xiàng):

A、321

B、23

C、不輸出任何內(nèi)容

D、陷入死循環(huán)

答案:【23】23.多選題:以下程序用于求1+1/2+1/3+......+1/9,指出程序的錯(cuò)誤行()#includeintmain(){inti;floatt,s=0;A:for(i=1;i<10;i++);{B:t=1/i;C:s+=t;}D:printf("%.2f",s);return0;}

選項(xiàng):

A、A標(biāo)號(hào)對(duì)應(yīng)的代碼行

B、B標(biāo)號(hào)對(duì)應(yīng)的代碼行

C、C標(biāo)號(hào)對(duì)應(yīng)的代碼行

D、D標(biāo)號(hào)對(duì)應(yīng)的代碼行

答案:【A標(biāo)號(hào)對(duì)應(yīng)的代碼行;B標(biāo)號(hào)對(duì)應(yīng)的代碼行】24.多選題:以下程序代碼要求實(shí)現(xiàn)求輸入的10個(gè)數(shù)中正數(shù)的個(gè)數(shù)。指出程序的錯(cuò)誤行()#includeintmain(){inti,a,n=0;for(i=0;i<10;i++){A:scanf("%f",&a);B:if(a<=0)C:break;n++;}D:printf("%d",n);return0;}

選項(xiàng):

A、A標(biāo)號(hào)對(duì)應(yīng)的代碼行

B、B標(biāo)號(hào)對(duì)應(yīng)的代碼行

C、C標(biāo)號(hào)對(duì)應(yīng)的代碼行

D、D標(biāo)號(hào)對(duì)應(yīng)的代碼行

答案:【A標(biāo)號(hào)對(duì)應(yīng)的代碼行;C標(biāo)號(hào)對(duì)應(yīng)的代碼行】25.單選題:在main函數(shù)中,c是經(jīng)過定義的整型變量,則while(c=getchar());是正確的循環(huán)語句()

選項(xiàng):

A、正確

B、錯(cuò)誤

答案:【正確】26.單選題:for(;;);語句相當(dāng)于while(1);()

選項(xiàng):

A、正確

B、錯(cuò)誤

答案:【正確】27.以下程序運(yùn)行后的輸出結(jié)果是()。#includeintmain(){inti=10,j=0;do{j=j+i;i--;}while(i>2);printf("%d\n",j);return0;}

答案:【52】28.設(shè)有以下程序:#includeintmain(){intn1,n2;scanf("%d",&n2);while(n2!=0){n1=n2%10;n2=n2/10;printf("%d",n1);}return0;}程序運(yùn)行后,如果從鍵盤上輸入1298;則輸出結(jié)果為()。

答案:【8921】29.以下程序的輸出結(jié)果是()。#includeintmain(){ints,i;for(s=0,i=1;i<3;i++,s+=i);printf("%d\n",s);return0;}

答案:【5】30.閱讀下面程序,程序的結(jié)果是()。#includeintmain(){inti=7;for(i=2;i>0;i--)printf("%d,",i);printf("%d",i);return0;}

答案:【2,1,0】第三章OJ——編程題1.水仙花數(shù)

答案:【題目?jī)?nèi)容:輸入整數(shù)m和n(100<=m<=n<=999),輸出m~n之間的水仙花數(shù)的個(gè)數(shù)。所謂水仙花數(shù),是指一個(gè)三位數(shù),其各位數(shù)字立方和等于該數(shù)本身,例如153=1*1*1+3*3*3+5*5*5,則153是水仙花數(shù)。輸入格式:輸入數(shù)據(jù)m和n之間以空格隔開(100<=m<=n<=999)輸出格式:以整型格式輸出數(shù)據(jù)輸入樣例:100300輸出樣例:1】2.求1+1/2+1/3+......+1/n

答案:【題目?jī)?nèi)容:輸入一個(gè)小于等于30的正整數(shù)n,求1+1/2+1/3+...+1/n的和輸入格式:一個(gè)正整數(shù)(<=30),以回車鍵結(jié)束輸出格式:以保留兩位小數(shù)的格式輸出數(shù)據(jù)輸入樣例:3輸出樣例:1.83】3.求素?cái)?shù)

答案:【題目?jī)?nèi)容:輸入整型數(shù)據(jù)m和n(100<=m<=n<=200),要求輸出m~n之間的所有素?cái)?shù)輸入格式:輸入數(shù)據(jù)m和n之間以空格隔開(100<=m<=n<=200)輸出格式:素?cái)?shù)之間以,隔開輸出輸入樣例:110130輸出樣例:113,127,】4.統(tǒng)計(jì)并輸出最高成績(jī)

答案:【題目?jī)?nèi)容:從鍵盤輸入若干個(gè)學(xué)生成績(jī),統(tǒng)計(jì)并輸出最高成績(jī),當(dāng)輸入負(fù)數(shù)時(shí)結(jié)束。輸入格式:輸入一組整數(shù)(<=100),以空格間隔數(shù)據(jù)輸出格式:以整型格式輸出結(jié)果輸入樣例:605080-5輸出樣例:80】5.s=a+aa+aaa+......+aa...aaa。

答案:【題目?jī)?nèi)容:由鍵盤輸入整型數(shù)據(jù)n和a的值,求s=a+aa+aaa+......+aa...aaa的值,其中a為一個(gè)數(shù)字,例如a=3,計(jì)算s=3+33+333+3333(此時(shí)n=4共有4個(gè)數(shù)相加)。輸入格式:輸入n和a的值,用空格隔開輸出格式:以整型格式輸出數(shù)據(jù)輸入樣例:45輸出樣例:6170】第四章數(shù)組第四章測(cè)驗(yàn)——客觀題1.單選題:以下程序的功能是:按順序讀入10名學(xué)生4門課程的成績(jī),計(jì)算出每位學(xué)生的平均分并輸出:#includemain(){intn,k;floatscore,sum,aver;sum=0.0;for(n=1;n<=10;n++){for(k=1;k<=4;k++){scanf("%f",&score);sum+=score;}aver=sum/4.0;printf("No%d:%f\n",n,aver);}}以上程序運(yùn)行后結(jié)果不正確,調(diào)試中發(fā)現(xiàn)有一條語句出現(xiàn)在程序中的位置不正確,這條語句是()

選項(xiàng):

A、sum=0.0;

B、sum+=score;

C、aver=sum/4.0;

D、printf("No%d:%f\n",n,aver);

答案:【sum=0.0;】2.單選題:以下程序的輸出結(jié)果是()#includemain(){chars[]="abcdef";s[3]='\0';printf("%s\n",s);}

選項(xiàng):

A、abcdef

B、abc

C、abcd

D、abc\0

答案:【abc】3.單選題:寫出以下程序的輸出結(jié)果()#includemain(){chars1[30]="thisbook",s2[30]="thathook";inti;for(i=0;s1[i]!='\0'&&s2[i]!='\0';i++)if(s1[i]==s2[i])printf("%c",s1[i]);printf("\n");}

選項(xiàng):

A、th

B、ook

C、thook

D、this

答案:【thook】4.單選題:以下4個(gè)字符串函數(shù)中,()所在的頭文件與其他3個(gè)不同

選項(xiàng):

A、strcpy

B、strlen

C、strcmp

D、gets

答案:【gets】5.單選題:下面程序的功能是將字符串s中所有的字符c刪除。應(yīng)填入()#include"stdio.h"main(){chars[80];inti,j;gets(s);for(i=j=0;s[i]!='\0';i++)if(s[i]!='c')____________;s[j]='\0';puts(s);}

選項(xiàng):

A、s[j++]=s[i]

B、s[++j]=s[i]

C、s[j]=s[i];j++

D、s[j]=s[i]

答案:【s[j++]=s[i]】6.單選題:下面程序的運(yùn)行結(jié)果是()#include"stdio.h"main(){charch[7]={"12ab56"};inti,s=0;for(i=0;ch[i]>='0'&&ch[i]<='9';i+=2)s=10*s+ch[i]-'0';printf("%d\n",s);}

選項(xiàng):

A、1

B、1256

C、12ab56

D、1256

答案:【1】7.單選題:下面程序的運(yùn)行結(jié)果是()#include"stdio.h"main(){charstr[]="ssswlia",c;intk;for(k=2;(c=str[k])!='\0';k++){switch(c){case'i':++k;break;case'l':continue;default:putchar(c);continue;}putchar('*');}}

選項(xiàng):

A、ssw*

B、sw*

C、sw*a

D、sw

答案:【sw*】8.單選題:下面程序的運(yùn)行結(jié)果是()#include"stdio.h"#include"string.h"main(){chara[80]="ab",b[80]="lmnp";inti=0;strcat(a,b);while(a[i++]!='\0')b[i]=a[i];puts(b);}

選項(xiàng):

A、lb

B、ablmnp

C、ab

D、lblmnp

答案:【lblmnp】9.單選題:設(shè)有數(shù)組定義:chararray[]="China";則數(shù)組array所占的存儲(chǔ)空間為()

選項(xiàng):

A、4個(gè)字節(jié)

B、5個(gè)字節(jié)

C、6個(gè)字節(jié)

D、7個(gè)字節(jié)

答案:【6個(gè)字節(jié)】10.單選題:設(shè)有數(shù)組定義:chararray[10]="China";則數(shù)組array所占的存儲(chǔ)空間為()

選項(xiàng):

A、4個(gè)字節(jié)

B、5個(gè)字節(jié)

C、6個(gè)字節(jié)

D、10個(gè)字節(jié)

答案:【10個(gè)字節(jié)】11.單選題:在數(shù)組中,數(shù)組名表示()

選項(xiàng):

A、數(shù)組第2個(gè)元素的首地址

B、數(shù)組第1個(gè)元素的首地址

C、數(shù)組所有元素的首地址

D、數(shù)組最后1個(gè)元素的首地址

答案:【數(shù)組第1個(gè)元素的首地址】12.單選題:合法的數(shù)組定義是()

選項(xiàng):

A、chara[]="string";

B、inta[5]={0,1,2,3,4,5};

C、chara="string";

D、chara[]={0,1,2,3,4,5}

答案:【chara[]="string";】13.單選題:以下給字符數(shù)組str定義和賦值正確的是()

選項(xiàng):

A、charstr[10];str={"china!"};

B、charstr[]={"china!"};

C、charstr[10];strcpy(str,"abcdefghijkl");

D、charstr[10]={"abcdefghijkl"};

答案:【charstr[]={"china!"};】14.單選題:執(zhí)行下面的程序段后,變量k中的值為()intk=3,s[2];s[0]=k;k=s[1]*10;

選項(xiàng):

A、不定值

B、33

C、30

D、10

答案:【不定值】15.單選題:當(dāng)接受用戶輸入的含空格的字符串時(shí),應(yīng)使用的函數(shù)是()

選項(xiàng):

A、scanf()

B、gets()

C、getchar()

D、getc()

答案:【gets()】16.單選題:以下程序給數(shù)組所有的元素輸入數(shù)據(jù),空處應(yīng)填入()main(){inta[10],i=0;while(i<10)scanf("%d",__);}

選項(xiàng):

A、&a[i]

B、a[i++]

C、&a[i++]

D、&a[++i]

答案:【&a[i++]】17.單選題:有字符數(shù)組a[80],b[80],則正確的輸出語句是()

選項(xiàng):

A、puts(a,b);

B、printf("%s,%s",a[],b[]);

C、putchar(a,b);

D、puts(a);puts(b);

答案:【puts(a);puts(b);】18.單選題:判斷字符串是否相等,應(yīng)當(dāng)使用()

選項(xiàng):

A、if(a==b)

B、if(a=b)

C、if(strcpy(a,b))

D、if(strcmp(a,b))

答案:【if(strcmp(a,b))】19.單選題:以下關(guān)于數(shù)組的描述正確的是()

選項(xiàng):

A、數(shù)組的大小是固定的,但可以有不同的類型的數(shù)組元素;

B、數(shù)組的大小是可變的,但所有數(shù)組元素的類型必須相同;

C、數(shù)組的大小是固定的,但所有數(shù)組元素的類型必須相同;

D、數(shù)組的大小是可變的,但可以有不同的類型的數(shù)組元素;

答案:【數(shù)組的大小是固定的,但所有數(shù)組元素的類型必須相同;】20.單選題:在定義inta[10];之后,對(duì)a的引用正確的是()

選項(xiàng):

A、a[9]

B、a[6.3]

C、a(6)

D、a[10]

答案:【a[9]】21.單選題:以下對(duì)二維數(shù)組a進(jìn)行正確初始化的是()

選項(xiàng):

A、inta[2][3]={{1,2},{3,4},{5,6}};

B、inta[][3]={1,2,3,4,5,6};

C、inta[2][]={1,2,3,4,5,6};

D、inta[2][]={{1,2},{3,4}};

答案:【inta[][3]={1,2,3,4,5,6};】22.單選題:在定義inta[5][4];之后,對(duì)a的引用正確的是()

選項(xiàng):

A、a[2][4]

B、a[5][0]

C、a[0][0]

D、a[0,0]

答案:【a[0][0]】23.單選題:在執(zhí)行inta[][3]={1,2,3,4,5,6};語句后,a[1][0]的值是()

選項(xiàng):

A、1

B、2

C、4

D、5

答案:【4】24.單選題:在執(zhí)行charstr[10]="china\0";strlen(str)的結(jié)果是()

選項(xiàng):

A、5

B、6

C、7

D、9

答案:【5】25.單選題:在C語言中,引用數(shù)組元素時(shí),其數(shù)組下標(biāo)的數(shù)據(jù)類型允許是()

選項(xiàng):

A、整型常量

B、整型表達(dá)式或整型常量

C、實(shí)型常量

D、任何類型的表達(dá)式

答案:【整型表達(dá)式或整型常量】26.單選題:有下面程序段chara[3],b[]="china";a=b;printf("%s",a);則()

選項(xiàng):

A、運(yùn)行后將輸出china

B、運(yùn)行后將輸出ch

C、運(yùn)行后將輸出chi

D、編譯出錯(cuò)

答案:【編譯出錯(cuò)】27.單選題:下面程序的運(yùn)行結(jié)果是()charc[]="\t\v\\\0will\n";printf("%d",strlen(c));

選項(xiàng):

A、14

B、3

C、9

D、輸出值不確定

答案:【3】28.單選題:若二維數(shù)組a有m列,則在a[i][j]前的元素個(gè)數(shù)是()

選項(xiàng):

A、j*m+i

B、i*m+j

C、i*m+j-1

D、i*m+j+1

答案:【i*m+j】29.單選題:以下一維數(shù)組a的正確定義是()

選項(xiàng):

A、inta(10);

B、floatn=10,a[n];

C、intn;scanf("%d",&n);floata[n];

D、#definesize10;longa[size];

答案:【#definesize10;longa[size];】30.單選題:以下對(duì)字符數(shù)組word進(jìn)行初始化,不正確的是()

選項(xiàng):

A、charword[]='cool\0';

B、charword[]={'c','o','o','l'};

C、charword[]={"cool\0"};

D、charword[]="cool\0";

答案:【charword[]='cool\0';】第四章OJ——編程題1.字符串比較

答案:【題目?jī)?nèi)容:從鍵盤輸入兩個(gè)字符串s1和s2,比較兩個(gè)字符串的大小并輸出比較結(jié)果,結(jié)果為對(duì)應(yīng)位置上第一對(duì)不相同字符ASCII碼的差值。輸入格式:兩個(gè)字符串,每個(gè)字符串(1<=字符串長(zhǎng)度<=99)以回車結(jié)束。輸出格式:十進(jìn)制整數(shù)值。輸入樣例:Abc123Abc56789輸出樣例:-4】2.數(shù)列首尾交換

答案:【題目?jī)?nèi)容:由鍵盤輸入n個(gè)整數(shù)放入一維數(shù)組中,請(qǐng)按照存放的順序逆序存儲(chǔ)后再輸出(即第一個(gè)數(shù)與最后一個(gè)數(shù)交換,將第二個(gè)數(shù)與倒數(shù)第二個(gè)數(shù)交換……,將交換后的數(shù)列輸出)。輸入格式:輸入包含兩行:第一行是n(1<=n<=20)。第二行是n個(gè)整數(shù),鄰近兩數(shù)之間用一個(gè)空格隔開。輸出格式:輸出的數(shù)列鄰近兩數(shù)之間用一個(gè),(逗號(hào))隔開。輸入樣例:5102015-9輸出樣例:-9,5,1,20,10,】3.數(shù)學(xué)成績(jī)統(tǒng)計(jì)

答案:【題目?jī)?nèi)容:將n個(gè)學(xué)生的數(shù)學(xué)成績(jī)放入一維數(shù)組中,求其平均成績(jī)并統(tǒng)計(jì)低于平均分的學(xué)生人數(shù)。輸入格式:輸入包含兩行:第一行是n(1<=n<=30)。第二行是n個(gè)整數(shù)(0—100之間),鄰近兩數(shù)之間用一個(gè)空格隔開。輸出格式:平均分和人數(shù)在兩行顯示。平均成績(jī)(浮點(diǎn)數(shù),保留一位小數(shù))。低于平均分的學(xué)生人數(shù)(正整數(shù))。輸入樣例:590458771100輸出樣例:78.62】4.方陣對(duì)角線

答案:【題目?jī)?nèi)容:輸入一個(gè)n×n的矩陣,分別計(jì)算該矩陣主對(duì)角線元素與副對(duì)角線元素之和。輸入格式:輸入包含n+1行:第一行為一個(gè)正整數(shù)n(1<=n<=10)。第二行到第n+1行,每行有n個(gè)整數(shù),鄰近兩數(shù)之間用一個(gè)空格隔開。輸出格式:兩數(shù)之間用一個(gè)空格隔開。輸入樣例:42341562171831611輸出樣例:175】5.字符串的子串

答案:【題目?jī)?nèi)容:從鍵盤輸入一個(gè)字符串s1,再任意輸入一個(gè)正整數(shù)k,將字符串s1的前k個(gè)字符拷貝到字符串s2。輸入格式:輸入一個(gè)字符串(1<=字符串長(zhǎng)度<=99),以回車結(jié)束。輸入k值,1<=k<=99且k<=s1串長(zhǎng)。輸出格式:輸出字符串s2。輸入樣例:Abcd123&^%ggg6輸出樣例:Abcd12】第五章函數(shù)第五章測(cè)驗(yàn)——客觀題1.單選題:以下程序運(yùn)行后的輸出結(jié)果是()#includefunc(inta,intb){staticintm=0,i=2;i+=m++;m=i+a+b;returnm;}intmain(){intk=4,m=1,p;p=func(k,m);printf("%d,",p);p=func(k,m);printf("%d",p);return0;}

選項(xiàng):

A、8,8

B、8,16

C、7,14

D、7,7

答案:【7,14】2.單選題:下列四個(gè)選項(xiàng)中論述錯(cuò)誤的是()

選項(xiàng):

A、實(shí)參可以是常量、變量或表達(dá)式

B、形參可以是變量、常量或表達(dá)式

C、實(shí)參可以為任意類型

D、形參應(yīng)與其對(duì)應(yīng)的實(shí)參類型一致

答案:【形參可以是變量、常量或表達(dá)式】3.單選題:下述程序段執(zhí)行后,輸出的結(jié)果是()#includeintm=4,n=6;intmax(intx,inty){intmax;if(x>y)max=x;elsemax=y;returnmax;}intmain(){intm=10;printf("%d",max(m,n));return0;}

選項(xiàng):

A、4

B、10

C、6

D、5

答案:【10】4.單選題:下面程序代碼的執(zhí)行結(jié)果是()#includevoidfunc(intx){while(x){if(x%10)printf("%d",x%10);x=x/10;}}intmain(){func(2345);return0;}

選項(xiàng):

A、5432

B、432

C、32

D、2

答案:【5432】5.單選題:下面程序代碼的執(zhí)行結(jié)果是()#includeintm=13;intfunc(inta,intb){intm=3;return(a*b-m);}intmain(){intx=7,y=5;intres;res=func(x,y)/m;printf("%d",res);return0;}

選項(xiàng):

A、2

B、3

C、5

D、7

答案:【2】6.單選題:C語言允許函數(shù)缺省類型,此時(shí)該函數(shù)的類型為()

選項(xiàng):

A、char

B、int

C、float

D、double

答案:【int】7.單選題:下面程序代碼的執(zhí)行結(jié)果是()#includefun(inta,intb,intc){a=456;b=567;c=678;}intmain(){intx=10,y=20,z=30;fun(x,y,z);printf("%d,%d,%d",z,y,x);return0;}

選項(xiàng):

A、30,20,10

B、10,20,30

C、456,567,678

D、678,567,456

答案:【30,20,10】8.單選題:下列四個(gè)選項(xiàng)中哪個(gè)論述錯(cuò)誤的是()

選項(xiàng):

A、不可以在一個(gè)函數(shù)中定義另一個(gè)函數(shù)

B、函數(shù)必須有返回值

C、main()函數(shù)可以放在其他函數(shù)之前

D、定義函數(shù)時(shí)可以無形參

答案:【函數(shù)必須有返回值】9.單選題:在一個(gè)源文件中定義的外部變量的作用域是()

選項(xiàng):

A、本文件的全部范圍

B、本程序的全部范圍

C、本函數(shù)的全部范圍

D、從定義的位置開始到本文件結(jié)束。

答案:【從定義的位置開始到本文件結(jié)束。】10.單選題:下列說法正確的是()

選項(xiàng):

A、一個(gè)函數(shù)的函數(shù)體必須有變量定義和執(zhí)行部分,二者缺一不可

B、一個(gè)函數(shù)的函數(shù)體必須要有執(zhí)行部分,可以沒有變量定義

C、一個(gè)函數(shù)的函數(shù)體可以沒有變量定義和執(zhí)行部分,函數(shù)可以是空函數(shù)

D、其余三個(gè)答案都不對(duì)

答案:【一個(gè)函數(shù)的函數(shù)體可以沒有變量定義和執(zhí)行部分,函數(shù)可以是空函數(shù)】11.單選題:若在一個(gè)C源程序文件中定義了一個(gè)允許其他源文件引用的浮點(diǎn)型外部變量a,則在另一文件中可使用的引用說明是()

選項(xiàng):

A、externstaticfloata;

B、floata;

C、externautofloata;

D、externfloata;

答案:【externfloata;】12.單選題:以下函數(shù)形式中,正確的是()

選項(xiàng):

A、intfunc(intx,inty){z=x+y;returnz;}

B、func(intx,y){intz;z=x+y;returnz;}

C、func(x,y){intx,y;intz;z=x+y;returnz;}

D、intfunc(intx,inty){intz;z=x+y;returnz;}

答案:【intfunc(intx,inty){intz;z=x+y;returnz;}】13.單選題:以下函數(shù)聲明中,正確的是()

選項(xiàng):

A、doublefunc(intx,inty)

B、doublefunc(intx;inty);

C、doublefunc(intx,inty);

D、doublefunc(intx,y);

答案:【doublefunc(intx,inty);】14.單選題:下述程序的執(zhí)行結(jié)果是()#include#defineM20func(inta[],intn,intm){inti,j;for(i=m;i>=n;i--)a[i+1]=a[i];}intmain(){inti,a[M]={1,2,3,4,5,6,7,8,9,10};func(a,2,9);for(i=0;i<5;i++)printf("%d",a[i]);return0;}

選項(xiàng):

A、10234

B、12344

C、12334

D、12234

答案:【12334】15.單選題:C語言中函數(shù)返回值的類型是由()決定

選項(xiàng):

A、return語句中的表達(dá)式類型

B、調(diào)用函數(shù)的主調(diào)函數(shù)類型

C、定義函數(shù)時(shí)所指定的函數(shù)類型

D、調(diào)用函數(shù)時(shí)臨時(shí)決定

答案:【定義函數(shù)時(shí)所指定的函數(shù)類型】16.單選題:以下說法正確的是()

選項(xiàng):

A、函數(shù)定義可以嵌套,函數(shù)調(diào)用不可以嵌套

B、函數(shù)定義不可以嵌套,函數(shù)調(diào)用可以嵌套

C、函數(shù)的定義和調(diào)用都可以嵌套

D、函數(shù)的定義和調(diào)用都不可以嵌套

答案:【函數(shù)定義不可以嵌套,函數(shù)調(diào)用可以嵌套】17.單選題:在函數(shù)調(diào)用時(shí),如果實(shí)參是普通變量(如整型變量),則它與對(duì)應(yīng)形參之間的傳遞方式是()

選項(xiàng):

A、地址傳遞

B、單向值傳遞

C、雙向值傳遞

D、用戶指定的傳遞方式

答案:【單向值傳遞】18.單選題:關(guān)于實(shí)參和形參,下面說法正確的是()

選項(xiàng):

A、實(shí)參和形參占用的相互獨(dú)立的存儲(chǔ)單元

B、實(shí)參和形參占用相同的存儲(chǔ)單元

C、實(shí)參和形參同名時(shí)占用相同的存儲(chǔ)單元

D、實(shí)參占用存儲(chǔ)單元,形參不占用存儲(chǔ)單元

答案:【實(shí)參和形參占用的相互獨(dú)立的存儲(chǔ)單元】19.多選題:指出程序的錯(cuò)誤行()#includeintmain(){intn;doublex,root;A:scanf("%f",&x);scanf("%d",&n);B:doublefun(intn,doublex);C:root=fun(x,n);printf("Root=%0.2f\n",root);return0;}doublefun(intn,doublex){if(n==1)return1;D:elsereturnx*fun(n-1,x);}

選項(xiàng):

A、標(biāo)號(hào)A所在的行

B、標(biāo)號(hào)B所在的行

C、標(biāo)號(hào)C所在的行

D、標(biāo)號(hào)D所在的行

答案:【標(biāo)號(hào)A所在的行;標(biāo)號(hào)C所在的行】20.多選題:已知某班10個(gè)同學(xué)的C語言程序設(shè)計(jì)成績(jī),計(jì)算平均成績(jī)。指出程序的錯(cuò)誤行()#includeintmain(){inta[10],i;floatave;A:floataverage(intm[10]);for(i=0;i<10;i++)B:scanf("%d",a[i]);C:ave=average(a[10]);printf("%7.2f",ave);return0;}floataverage(intm[10]){inti,sum=0;for(i=0;i<10;i++)sum+=m[i];D:returnsum*1.0/10;}

選項(xiàng):

A、標(biāo)號(hào)A所在行

B、標(biāo)號(hào)B所在行

C、標(biāo)號(hào)C所在行

D、標(biāo)號(hào)D所在行

答案:【標(biāo)號(hào)B所在行;標(biāo)號(hào)C所在行】21.單選題:主函數(shù)和其他自定義函數(shù)之間可以互相調(diào)用()

選項(xiàng):

A、正確

B、錯(cuò)誤

答案:【錯(cuò)誤】22.單選題:函數(shù)必須有返回值()

選項(xiàng):

A、正確

B、錯(cuò)誤

答案:【錯(cuò)誤】23.以下程序運(yùn)行后的輸出結(jié)果是()#includevoidfunc(){externintx,y;inta=15,b=10;x=a-b;y=a+b;}intx,y;intmain(){inta=7,b=5;intx;x=a+b;y=a-b;func();printf("%d,%d",x,y);return0;}

答案:【12,25】24.運(yùn)行時(shí)從鍵盤上輸入字符串Student,以下程序運(yùn)行后的輸出結(jié)果是()#includeintfunc(chars[]){inti=0;for(;s[i]!='\0';i++);returni;}intmain(){charstr[50];intnum;gets(str);num=func(str);printf("%d",num);return0;}

答案:【7】25.從鍵盤輸入55678-356898120按回車鍵,以下程序運(yùn)行后的輸出結(jié)果是()#includevoidfunc(intn,intarray[]){inti,j,t;for(i=0;ifor(j=0;jif(array[j]{t=array[j];array[j]=array[j+1];array[j+1]=t;}}intmain(){inti,N,a[30];scanf("%d",&N);for(i=0;iscanf("%d",&a[i]);func(N,a);for(i=0;iprintf("%d",a[i]);return0;}

答案:【8120897856-356】26.以下程序運(yùn)行后的輸出結(jié)果是()#includevoidfun(inta[3][3],intres[3]){inti,j;for(i=0;i<3;i++){res[i]=a[0][i];for(j=0;j<3;j++){if(a[j][i]>res[i])res[i]=a[j][i];}}}intmain(){inti,x[3][3]={{1,5,9},{12,100,37},{-17,11,32}};inty[3];fun(x,y);for(i=0;i<3;i++)printf("%d,",y[i]);return0;}

答案:【12,100,37,】27.以下程序運(yùn)行后的輸出結(jié)果是()#include#includevoidswap(intp1,intp2){inttemp;temp=p1;p1=p2;p2=temp;}intmain(){inta=6,b=8;swap(a,b);printf("%d,%d",a,b);return0;}

答案:【6,8】28.以下程序運(yùn)行后的輸出結(jié)果是()#includeintx=2;voidfun(inty){intx=6;x+=y;}intmain(){inta=3;fun(a);x+=a;printf("%d",x);return0;}

答案:【5】29.運(yùn)行時(shí)從鍵盤上輸入字符串Student和t,以下程序運(yùn)行后的輸出結(jié)果是()#include#includevoidfunc(chars[],charc1){charnew_s[30];inti,j;for(i=0,j=0;s[i]!='\0';i++)if(s[i]!=c1)new_s[j++]=s[i];new_s[j]='\0';strcpy(s,new_s);}intmain(){chars1[30],s2[30];inti,j;charc;printf("pleaseinputastring:\n");gets(s1);printf("pleaseinputarandomcharacter:\n");c=getchar();func(s1,c);puts(s1);return0;}

答案:【Suden】30.寫出下面程序代碼的執(zhí)行結(jié)果()#includeintfunc(intm[10]){ints,i;s=m[0];for(i=0;i<10;i++)if(s>m[i])s=m[i];returns;}intmain(){inta[10]={4,7,9,1,54,67,88,2,21,3};intres;res=func(a);printf("%d",res);return0;}

答案:【1】第五章OJ——編程題1.成績(jī)統(tǒng)計(jì)

答案:【題目?jī)?nèi)容:從鍵盤輸入M個(gè)學(xué)生(1<=M<=20)N(1<=N<=5)門課程的成績(jī),統(tǒng)計(jì)并輸出每個(gè)學(xué)生各門課程的總成績(jī),其中每個(gè)學(xué)生各門課程的總成績(jī)的統(tǒng)計(jì)要求使用自定義函數(shù)實(shí)現(xiàn)輸入格式:M+1行第一行:M和N的值,以空格隔開第二行至M+1行:M個(gè)學(xué)生的N門課程的成績(jī),每個(gè)學(xué)生的成績(jī)一行,成績(jī)之間以空格間隔輸出格式:輸出M個(gè)數(shù)據(jù),數(shù)據(jù)之間以,隔開輸入樣例:23897863937083輸出樣例:230,246,】2.數(shù)據(jù)排序

答案:【題目?jī)?nèi)容:從鍵盤輸入一個(gè)整數(shù)N(2<=N<=30),然后輸入N個(gè)整型數(shù)據(jù)存入數(shù)組a,要求將數(shù)組a中的數(shù)據(jù)從大到小排序并輸出,其中排序要求編寫自定義函數(shù)實(shí)現(xiàn)(排序方法不限),在主函數(shù)中輸出排序后的數(shù)組a。輸入格式:兩行第一行輸入整數(shù)N(2<=N<=30)第二行輸入N個(gè)整數(shù),整數(shù)之間以一個(gè)空格間隔輸出格式:N個(gè)整型數(shù)據(jù),數(shù)據(jù)之間以一個(gè)空格間隔輸入樣例:10-20010008913710001-500007893820888輸出樣例:100017893100088813789208-200-50000】3.水仙花數(shù)

答案:【題目?jī)?nèi)容:輸入一個(gè)整數(shù)(100~999),判斷該數(shù)是不是水仙花數(shù)。如果是水仙花數(shù),輸出1,否則輸出0.要求水仙花數(shù)的判斷使用自定義函數(shù)實(shí)現(xiàn),完成水仙花數(shù)判斷的自定義函數(shù)intfunc(intn)的設(shè)計(jì),提交代碼時(shí)連同主函數(shù)一同提交。主函數(shù)如下#includemain(){intnum,s;intfunc(intn);scanf("%d",&num);s=func(num);printf("%d",s);}輸入格式:輸入一個(gè)整數(shù)N(100<=N<=999)輸出格式:一個(gè)整數(shù)輸入樣例:153輸出樣例:1】4.遞歸法求數(shù)

答案:【題目?jī)?nèi)容:用遞歸方法求解下面的問題,有若干個(gè)數(shù),若第一個(gè)數(shù)是6,數(shù)據(jù)之間滿足如下關(guān)系,第二個(gè)數(shù)比第一個(gè)數(shù)大3,第三個(gè)數(shù)比第二個(gè)數(shù)大3,第四個(gè)數(shù)比第三個(gè)數(shù)大3,依此類推,后面的每一個(gè)數(shù)都比前面的數(shù)據(jù)大3,現(xiàn)要求輸入一個(gè)數(shù)N(1~10),求第N個(gè)數(shù)對(duì)應(yīng)的數(shù)值(求第N個(gè)數(shù)要求編寫遞歸函數(shù)實(shí)現(xiàn),求出的數(shù)值在main()函數(shù)輸出)。輸入格式:以整型格式輸入數(shù)據(jù)N(1<=N<=10)輸出格式:將結(jié)果以整型數(shù)據(jù)格式輸出輸出樣例:5輸出樣例:18】5.字符個(gè)數(shù)統(tǒng)計(jì)

答案:【題目?jī)?nèi)容:從鍵盤輸入一個(gè)字符串,統(tǒng)計(jì)字符串中小寫字母的個(gè)數(shù),要求統(tǒng)計(jì)小寫字母的個(gè)數(shù)用自定義函數(shù)實(shí)現(xiàn)。完成小寫字母字符統(tǒng)計(jì)的自定義函數(shù)intfact(charstr[])的設(shè)計(jì),提交代碼時(shí)連同主函數(shù)一同提交。主函數(shù)如下#includemain(){intres;chars[50];gets(s);res=fact(s);printf("%d",res);}輸入格式:輸入一個(gè)字符串(長(zhǎng)度不超過50個(gè)字符)輸出格式:以整型格式輸出結(jié)果輸入樣例:HelloWorld!輸出樣例:8】第六章指針第六章OJ——編程題1.排序問題

答案:【題目?jī)?nèi)容:從鍵盤輸入10個(gè)整型數(shù)據(jù)存入一維數(shù)組a,用指針方法,將一維數(shù)組inta[10]中元素按從小到大順序輸出。輸入格式:10個(gè)整數(shù),用空格隔開輸出格式:排序后的10個(gè)數(shù),空格隔開輸入樣例:9172465308[回車]輸出樣例:0123456789[空格]】2.求一組數(shù)據(jù)中的最大值和最小值

答案:【題目?jī)?nèi)容:由鍵盤輸入n個(gè)整數(shù)放入一維數(shù)組中,編寫函數(shù),用指針做函數(shù)參數(shù)的方式,求該一維數(shù)組中的最大值和最小值,在主函數(shù)中將最大值和最小值輸出。輸入格式:輸入包含兩行:第一行是n(1<=n<=20)。第二行是n個(gè)整數(shù),鄰近兩數(shù)之間用一個(gè)空格隔開。輸出格式:依次輸出最大值和最小值,用空格隔開輸入樣例:5-9110306輸出樣例:30-9】3.統(tǒng)計(jì)字符串中空格的個(gè)數(shù)

答案:【題目?jī)?nèi)容:從鍵盤輸入一個(gè)字符串,統(tǒng)計(jì)該串中空格的個(gè)數(shù)(用字符指針處理)。輸入格式:輸入一個(gè)字符串(1<=字符串長(zhǎng)度<=99),以回車結(jié)束。輸出格式:一個(gè)整數(shù)值輸入樣例:Goodnight,honey輸出樣例:2

溫馨提示

  • 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)論