C考試系統(tǒng)題庫_第1頁
C考試系統(tǒng)題庫_第2頁
C考試系統(tǒng)題庫_第3頁
C考試系統(tǒng)題庫_第4頁
C考試系統(tǒng)題庫_第5頁
已閱讀5頁,還剩77頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

目錄

目錄.....................................................................................

單元練習(xí)題一C語言基礎(chǔ)知識(shí)..........................................................3

判斷題.....................................................................3

二、單項(xiàng)選擇題.................................................................4

三、讀程序選擇題..............................................................7

四、程序填空題.....................................................................8

五、編程題......................................................錯(cuò)誤!未定義書簽。

單元練習(xí)題二C語言程序結(jié)構(gòu)..........................................................9

判斷題..........................................9

--、單項(xiàng)選擇題.…....................................9

--、讀程序選擇題錯(cuò)誤!未定義書簽。

四、程序填空題…...................................17

五、編程題......錯(cuò)誤!未定義書簽。

單元練習(xí)題三數(shù)組.................................21

判斷題…..….................................21

單項(xiàng)選擇題.................................22

三、讀程序選擇題錯(cuò)誤!未定義書簽。

四、程序填空題.....................................28

五、編程題......錯(cuò)誤!未定義書簽。

單元練習(xí)題四函數(shù)…….................................33

判斷題…??….................................33

單項(xiàng)選擇題.....................34

三、讀程序選擇題.....................40

四、程序填空題.…錯(cuò)誤!未定義書簽。

五、編程題......錯(cuò)誤!未定義書簽。

單元練習(xí)題五預(yù)處理..錯(cuò)誤!未定義書簽。

判斷題…??…錯(cuò)誤!未定義書簽。

單項(xiàng)選擇題錯(cuò)誤!未定義書簽。

三、讀程序選擇題錯(cuò)誤!未定義書簽。

四、程序填空題.???錯(cuò)誤!未定義書簽。

五、編程題......錯(cuò)誤!未定義書簽。

單元練習(xí)題六指針…….................................45

判斷題..…….................................45

單項(xiàng)選擇題.................................46

三、讀程序選擇題.......錯(cuò)誤!未定義書簽。

四、程序填空題...........................................54

五、編程題..............錯(cuò)誤!未定義書簽。

單元練習(xí)題七結(jié)構(gòu)體與共用體.................................58

判斷題…??….................................58

單項(xiàng)選擇題.................................60

三、讀程序選擇題錯(cuò)誤!未定義書簽。

四、程序填空題.….................................68

五、編程題......錯(cuò)誤!未定義書簽。

單元練習(xí)題八文件…….................................72

判斷題.…?….................................72

單項(xiàng)選擇題.................................73

三、讀程序選擇題.................................77

四、程序填空題.….................................77

五、編程題......錯(cuò)誤!未定義書簽。

第一章C語言基礎(chǔ)知識(shí)

(c語言概述、算法、數(shù)據(jù)類型運(yùn)算符表達(dá)式、位運(yùn)算)

一、判斷題

R1.在C語言中,逗號(hào)運(yùn)算符的優(yōu)先級(jí)最低。

2.在C語言可執(zhí)行程序的開始執(zhí)行點(diǎn)是程序中第一個(gè)函數(shù)。

3.“5ch”是合法的變量名。

R4.C語言程序書寫格式自由,一行內(nèi)可以寫兒個(gè)語句,一個(gè)語句可以分寫在多

行上。

5.當(dāng)輸入數(shù)據(jù)時(shí),必須指明變量的地址,如scanf("%f",&f)

N6.表達(dá)式i++與++i在任何場(chǎng)合功能完全相同。

7.在賦值表達(dá)式中,賦值號(hào)左邊的變量和右邊的表達(dá)式之值的數(shù)據(jù)類型可以不

相同oFloata;intb=1;a=b;

R8.C語言程序中,語句以逗號(hào)結(jié)尾。()

9.在C程序中,APH和aph代表不同的變量。()

10.a-=7等價(jià)于a=a-7。()

NILprintf函數(shù)中用到格式符%5s,其中數(shù)字5表示輸出的字符串占用5歹人如果

字符串長(zhǎng)度大于5,則輸出按原字符長(zhǎng)從左向右全部輸出。()

12.如果x>y為真或a<b為真,表達(dá)式(x>y)&&(a<b)就為真。()

13.C語言程序的變量必須先定義再使用。()

14.若a和b是同類型變量,在執(zhí)行了賦值語句a=b;后b中的值將放入a中,b

中的值將丟失。()

15.程序的執(zhí)行總是從main函數(shù)開始,在程序的最后一個(gè)函數(shù)中結(jié)束。()

N16.變量的三個(gè)屬性是指變量的名字、變量的值和變量在內(nèi)存中的地址。()

17.運(yùn)算符優(yōu)先順序:賦值運(yùn)算符(邏輯運(yùn)算符〈關(guān)系運(yùn)算符(算術(shù)運(yùn)算符()

18.對(duì)應(yīng)float類型的變量,也可以用等號(hào)“==”進(jìn)行數(shù)值的判斷。()

19.表達(dá)式:1&&3.14和1&3的值一樣大。()01&11=1

20.為了正確計(jì)算表達(dá)式既要考慮運(yùn)算符的優(yōu)先級(jí),也要考慮其結(jié)合性。()

21、任何C程序都是從main函數(shù)開始和結(jié)束;

22.在C程序中,使用分號(hào)“;”表示語句的結(jié)束。()

23.C程序中的必須要有至少一個(gè)main的函數(shù),可以有多個(gè)。()

24.在C程序中,無論是整數(shù)還是實(shí)數(shù),都能準(zhǔn)確無誤的表示。()

25.在C程序中,賦值運(yùn)算符的優(yōu)先級(jí)最低。()

26.當(dāng)輸入數(shù)值數(shù)據(jù)時(shí),對(duì)于整型變量只能輸入整型值;對(duì)于實(shí)型變量只能輸入

實(shí)型值。()

27.在C程序中,變量可以一邊定義一邊使用。()

28.C程序中的注釋部分可有可無,可以省略。()

29.字符型變量可以存放多個(gè)字符。()

30.在對(duì)一個(gè)C程序進(jìn)行編譯的過程中,可發(fā)現(xiàn)注釋中的拼寫錯(cuò)誤。()

5.在C程序中,無論是整數(shù)還是實(shí)數(shù),都能被準(zhǔn)確無誤地表示。()

1.一個(gè)C程序的執(zhí)行是從本程序的main函數(shù)開始,到main函數(shù)結(jié)束。()

3.()

4.運(yùn)算符優(yōu)先順序:賦值運(yùn)算符(邏輯運(yùn)算符〈關(guān)系運(yùn)算符(算術(shù)運(yùn)算符()

二、單項(xiàng)選擇題

R1、以下標(biāo)識(shí)符中,不能作為合法的C用戶定義標(biāo)識(shí)符的是:()

A.a3_b3B.voidC._123D.abc

R2、C語言規(guī)定:在一個(gè)源程序中,main函數(shù)而位置()。

A.必須在最后B.必須在系統(tǒng)調(diào)用的庫函數(shù)的后面。

C.必須在最開始。D.可以任意

R3、下列說法中正確的是()□

A.C程序書寫時(shí),不區(qū)分大小寫字母

B.C程序書寫時(shí),一行只能寫一個(gè)語句

C.C程序書寫時(shí),一個(gè)語句可分成幾行書寫

D.C程序書寫時(shí)每行必須有行號(hào)

4、已知ch是字符型變量,下面不正確的賦值語句是()o

A.ch=5+9;B.ch='a'+b';C.ch='\0';D.ch='7'+'6';

5、若有定義:inta=7;floatx=2.5,y=4.7;則表達(dá)式

x+a%3*(int)(x+y)%2/4的值是()。

A.2.750000B.0.00000C.3.500000D.2.500000

6.已知ch是字符型變量,下面正確的賦值語句是()。

A.ch='123';B.ch='\08C.ch='\xffD.ch="\

1.以下標(biāo)識(shí)符中,不能作為合法的C用戶定義標(biāo)識(shí)符的是:。

A)a3_b3B)voidC)_123D)abc

2.C語言中,運(yùn)算對(duì)象必須是整電的運(yùn)算符是。

A)%B)/0%和/D)*

7.在C程序中,用表示邏輯值“真”。

A)1B)非0的數(shù)C)非1的數(shù)D)大于0的數(shù)

N8.設(shè)intc=5和inta;a=2+(c+=c,c+8,++c),貝Ua=

A)15B)14C)13D)16

9.C語言中的標(biāo)識(shí)符只能由字母、數(shù)字和下劃線三種字符組成,且第一個(gè)字符

A)必須為字母或下劃線。B)必須為下劃線。

C)必須為字母D)可以是字母、數(shù)字和下劃線中的任一種字符。

10.若變量已正確定義并賦值,表達(dá)式不符合C語言語法。

A)a*b/c;B)3.14%2C)2,bD)a/b/c

11.下列說法中正確的是o

A)C程序書寫時(shí),不區(qū)分大表達(dá)式小寫字母

B)C程序書寫時(shí),一行只能寫一個(gè)語句

C)C程序書寫時(shí),一個(gè)語句可分成兒行書寫

D)C程序書寫時(shí)每行必須有行號(hào)

12.為表示數(shù)學(xué)關(guān)系x2y2z,正確的C語言表達(dá)式是。

A)(x>=y)&&(y>=z)B)(x>=y)AND(y>=z)

C)(x>=y>=z)D)(x>=y)&(y〉=z)

13.不合法的八進(jìn)制數(shù)是

A)0B)028C)077D)01

14、以下不能定義為用戶標(biāo)識(shí)符是

AMainB_0C_intDsizeof

15.若x=5,y=4則y*=x+5;等價(jià)于y=y*(x+5)y的值為()。

A.40B.20CB.15D.30

16、組成C語言程序的基本單位是()o

A)過程B)子程序

0函數(shù)D)主程序和子程序

17.下列哪個(gè)標(biāo)識(shí)符是C語言合法的標(biāo)識(shí)符()。

A)a*bB)-xyz

C)ba2D)5i

N18.若有定義:inta=7;floatx=2.5,y=4.7;則表達(dá)式

x+a%3*(int)(x+y)/4的值是()。

A)2.75B)3.5

C)2.5D)0

19.設(shè)intm=l,n=2;則++m==n的結(jié)果是()

A、0B、1C、2D、3

N20.若變量已定義并賦值,下列符合C語法的表達(dá)式是:()

A、a:=b+lB、a=b=c+2

C、int18.5%3D、a=a+7=c+b

R(3)在C程序中,設(shè)一表達(dá)式中包含有int,long,unsigned和char類型的變量和數(shù)據(jù),則

表達(dá)式最后的運(yùn)算結(jié)果類型是()

A.inlB.charC.unsignedD.long

R21.C語言中基本的數(shù)據(jù)類型包括。

A)整型、實(shí)型、邏輯型B)整型、實(shí)型、字符型

C)整型、字符型、邏輯型D)整型、實(shí)型、邏輯型、字符型

N22.若定義x和y為double類型,則表達(dá)式:x=2,y=x+5/2的值是

A)4B)4.5C)4.0D)3.0

23.在以下運(yùn)算符中,優(yōu)先級(jí)最高的運(yùn)算符是

A)?:B)++C)&&D)+=

24.C語言中基本的數(shù)據(jù)類型不包括o

A)整型B)字符串型

C)字符型D)實(shí)型

25.若定義intx=7,y=5,z;則表達(dá)式:z=x+5/2*y的值是

A)7B)7.5C)17D)19.5

6.以下說法中正確的是()

A、C語言程序總是從第一個(gè)定義的函數(shù)開始執(zhí)行

B、在C語言程序中,要調(diào)用的函數(shù)必須在main。函數(shù)中定義

C、C語言程序總是從main。函數(shù)開始執(zhí)行

D、C語言程序中的main。函數(shù)必須放在程序的開始部分

(1)設(shè)inta=2,b;則執(zhí)行b=a&&l;語句后,b的結(jié)果是()

A.OB.lC.2D.3

N(2)逗號(hào)表達(dá)式(a=3*5,a*4),a+15的值是()

A.15B.60C.30D.75

7.若已經(jīng)定義了一個(gè)字符型變量為a,下面哪個(gè)表達(dá)式的含義跟其余表達(dá)式不

同:

A)a!=0B)a!='\0'C)aD)!a

8.在以下運(yùn)算符中,優(yōu)先級(jí)最高的運(yùn)算符是

A),B)[]C)&&D)4=

9.在C語言中,邏輯值“真”用表示。

A)tueB)大于0的數(shù)C)非0的整數(shù)D)非0的數(shù)

10.表達(dá)式是滿足:當(dāng)c的值為1、3、5三個(gè)數(shù)中任意一個(gè)時(shí)值為“真”,

否則值為“假”的表達(dá)式

A)C=l)ll(c=3)ll(c=5)B)(c!=l)&&(c!=3)&&(c!=5)

C)C==l)&&(c==3)&&(c=5)D)(c==l)ll(c==3)ll(c==5)

l.C語言中,int類型數(shù)據(jù)占2個(gè)字節(jié),則long類型數(shù)據(jù)占()

A、1個(gè)字節(jié)B、2個(gè)字節(jié)C、3個(gè)字節(jié)D、4個(gè)字節(jié)

1.下列字符串是合法的標(biāo)識(shí)符的是()。

A、_HJB、9_studentC、longD、LINE1

2.下列說法中正確的是()o

A、C程序書寫時(shí),不區(qū)分大小寫字母

B、C程序書寫時(shí),一行只能寫一個(gè)語句

C、C程序書寫時(shí),一個(gè)語句可分成兒行書寫

D、C程序書寫時(shí)每行必須有行號(hào)

3.在C語言中,要求參加運(yùn)算的數(shù)必須是整數(shù)的運(yùn)算符是()o

A、/B、!C、%D、==

4.C語言中,邏輯”真”等價(jià)于()o

A、大于零的數(shù)B、大于零的整數(shù)

C、非零的數(shù)D、非零的整數(shù)

6.假設(shè)在程序中a,b,c均被定義為整型,并且已賦大于1的值,則下列能正確表示

代數(shù)式1/abc的表達(dá)式是()。

A、l/a*b*cB、1/(a*b*c)

C>1/a/b/(float)cD、1.0/a/b/c

1.下列合法的字符常量是()o

A、'\084'B、'\x43'C、'ab'D、"\0"

2.在C語言提供的合法的關(guān)鍵字是()

A、switchB、cherC、CaseD、sturct

3.若已定義x和y為double類型,則表達(dá)式:x=l,y=x+3/2的值是

A、2B、1C、2.0D、2.5

三、程序填空題

1以下程序不用第三個(gè)變量實(shí)現(xiàn)兩個(gè)數(shù)對(duì)調(diào)的操作。

#includ"stdio.h"

main()

(

inta,b;

scanf(n%d,%dn,&a,&b);//5,10

a=<a+b>;(三個(gè)字符)

b=<a-b>;(三個(gè)字符)

a=a-b;

printf(n%d,%dn,a,b);

)

2、選擇程序的運(yùn)行結(jié)果。

main()

{intx=l,y=2,z,a,b,c,d;

z=++xI++y;

printf("x=%d\n”,x);

printf("y=%d\n",y);/*輸出結(jié)果<y=2>(三個(gè)字符)*/

a=-l;b=-2;c=++a&&b++;

printfCb=%d\nw,b);/*輸出結(jié)果<b=-2>(三個(gè)字符)*/}

3以下程序的結(jié)果為

main()

(

unsignedinta=3,b=10;

printf("%d\n",a?2lb?l);/*輸出結(jié)果<14>*/

printf("%d\n",a?2&b?l);/*輸出結(jié)果<0>*/

)

4若x=3,y=z=4,則下列表達(dá)式的值是。

(1)(z>=y>=x)?1:0

/*值為<0〉*/

⑵z>=y&&y>=x

/*值為<1>*/

5已知floatx=4.3,inty;執(zhí)行語句y=(int)x后,x為<int>型(填寫小寫英文

字母),且y=<4>(填寫阿拉伯?dāng)?shù)字);

6表達(dá)式'6&&'6的值為<1>(填寫阿拉伯?dāng)?shù)字),‘c'&&'611!(3+4)的值

為<1>(填寫阿拉伯?dāng)?shù)字)。

7若x為int類型,則與邏輯表達(dá)式“x”等價(jià)的表達(dá)式是<x!=0>,與邏輯表達(dá)式

“!x”等價(jià)的表達(dá)式是<x==0>。

8表示“整數(shù)x的值大于5”時(shí)邏輯值為“真”的表達(dá)式是<x>5>,邏輯值為“假”

的表達(dá)式是<x<=5>

9已知字母A的ASCII碼為十進(jìn)制數(shù)65,且設(shè)ch為字符型變量,則表達(dá)式ch=

'A'-'4'+'9'的值為<'F>(一個(gè)字符常量);若定義:charc='\72';則變

量c中包含的字符個(gè)數(shù)為<1>(數(shù)字)。

10、C語言所提供的基本數(shù)據(jù)類型的整型類型包括:<短整型〉、嬲、〈長(zhǎng)整型>。

(按每種類型所占字節(jié)數(shù),從小到大排列)

第二章C語言程序結(jié)構(gòu)

(順序程序設(shè)計(jì)、選擇結(jié)構(gòu)程序設(shè)計(jì)、循環(huán)控制)

一、判斷題

1.do-while語句中的條件為非0時(shí),就結(jié)束該循環(huán)。

2.在switch-case語句中,不是每個(gè)case后都要使用break語句。()

3.Break語句只能用于循環(huán)結(jié)構(gòu)中。()

48.未給變量賦初值,只是運(yùn)行結(jié)果不正確,不會(huì)有其他不良影響。()

5、switch語句中,可以不使用break語句;

6、for語句中,三個(gè)表達(dá)式都可以省略;

7(7)在for循環(huán)中使用break語句的目的是使流程跳出循環(huán)體,終止當(dāng)前循環(huán)

8.continue語句只能用于循環(huán)語句中。()

9.while語句中的條件為0時(shí),就結(jié)束該循環(huán)。

10.在循環(huán)體內(nèi)使用break語句或continue語句的作用相同。。

在C語言中,邏輯值“真”用表示。

11)112)大于0的數(shù)13)非0的整數(shù)14)非0的數(shù)

在循環(huán)語句的循環(huán)體中,continue語句的作用是()。

15)立即終止整個(gè)循環(huán)16)繼續(xù)執(zhí)行continue語句之后的循環(huán)體

17)結(jié)束本次循環(huán)18)結(jié)束本次循環(huán)并跳出循環(huán)

語句while(!e);中,條件!e等價(jià)于()

19.e==020.d=021.e!=l22.e==l

設(shè)intc=5和inta;a=2+(c+=c++,c+8,++c),貝Ua=

23)1524)1425)1326)16

c=c+c++

若要表示if(a不等于0)這一關(guān)系式,則能正確表示這一關(guān)系的表達(dá)式為if()

27)M>028)h29)a=030)a

二、單項(xiàng)選擇題

N1、以下不是死循環(huán)的語句是

for(;;x+i);

whileQ){x++;}

for(i=10;;i--)sum+=i;

for(;(c=getchar())!='\n';)printf("%c”,c);

2.設(shè)有程序段

intk=10;

while(k=0)k=k-1;

以下描述正確的是()o

A.循環(huán)體語句一次也不執(zhí)行。B.循環(huán)是無限循環(huán)。

C.while循環(huán)語句執(zhí)行十次。D.循環(huán)體語句執(zhí)行一次。

N3.對(duì)下述程序,正確的判斷是()o

main()

{inta,b;

scanf(n%d,%d",&a,&b);

if(a>b)a=b;b=a;

elsea++;b++;

printf(H%d,%dn,a,b);

)

A.有語法錯(cuò)誤不能通過編譯B.若輸入4,5則輸出5,6

C.若輸入5,4則輸出4,5D.若輸入5,4則輸出5,5

R4.以下程序

main()

(

inti=010,j=10,k=0xl0;

printf("%d,%d,%d\n",i,j,k);

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

輸出結(jié)果是()

A.8,10,16B.8,10,10C.10,10,10D.10,10,16

R5.若變量已正確說明為int類型,要給a,b,c輸入數(shù)據(jù),以下語句正確的是

A)ead(a,b,c);B)scanf("%d%d%d”,a,b,c);

C)scanf(“%D%D%D”,&a,%b,%c);D)sanf("%d%d%d",&a,&b,&c);

R6.已知在ASCII字符集中,字符0的ASCII值為48,下面程序的輸出結(jié)果

為o

main()

(

charx,y;

x=,0';y='9,;

pimtf("%d,%d\n”,x,y);

)

A)因輸出格式不合法,輸出錯(cuò)誤信息B)48,57

C)0,9D)48,58

7.語句for(k=0;k<5;++k)

if(k==3)continue;

printf(“%d”,k);

}的輸出結(jié)果為O

A)012B)0124C)01234D)沒有輸出結(jié)果

8.為表示關(guān)系x>=y>=z,應(yīng)使用C語言表達(dá)式。

A)(y<=x)&&(y>=z)B)(x>=y)AND(y>=z)

C)(x>=y>=z)D)(x>=y)&(y>=z)

6.若變量已正確定義,語句“if(a>b)k=0;elsek=l;w和等價(jià)。

A、k=(a>b)?l:0;B、k=a>b;

C、k=a<=b;D、a<=b?0:1;

9.以下程序的輸出結(jié)果是

voidmainO

inta=2,b=5;

€4,,

printf(a=%%%d,b=%%%d(a,b);

)

A)a=%2,b=%5B)a=2,b=5

C)a=%%d,b=%%dD)a=%d,b=%d

N10.以下程序的輸出結(jié)果是

voidmain()

{intx=10,y=10;

printf(l4%d%d\n”,x一,一y);

}

A)1010B)99C)910D)109

11.若要表示if(a不等于0)這一關(guān)系式,則能正確表示這一關(guān)系的表達(dá)式為

if()

A)a<>0B)!aC)a=0D)a

R12對(duì)于循環(huán)語句while(1);下面()是正確的

A、死循環(huán)B、循環(huán)一?次

C、不進(jìn)入循環(huán)體D、編譯有錯(cuò)

13.下面程序的輸出是(假設(shè)int數(shù)據(jù)是2個(gè)字節(jié))

voidmain()

{inta=32768;

printf("a=%d\n”,a);

A)a=32768B)a=32767C)a=-32768D)a=-l

14.表達(dá)式是滿足:當(dāng)c的值為1、3、5三個(gè)數(shù)中任意一個(gè)時(shí)值為“真”,

否則值為“假”的表達(dá)式

A)(c=l)||(c=3)||(c=5)B)(c!=l)&&(c!=3)&&(c!=5)

C)(c==l)&&(c==3)&&(c=5)D)(c==l)||(c==3)||(c==5)

N15.以下程序段的輸出結(jié)果是

intx=3;

do

{printf("%3d",x-=2;}

while(!(—x));

A)1B)30

C)1-2D)死循環(huán)

16、數(shù)字字符0的ASCII值為48,若有以下程序

main()

(

chara='l',b='2';

printf("%c,",b++);

printf("%d\n",b-a);

)

程序運(yùn)行后的輸出結(jié)果是

A3,2B50,2C2,2D2,50

17、有以下程序

main()

(

inta,b,d=25;

a=d/10&(-1);

b=a&&(-1);

printf("%d,%d\n",a,b);

)

程序運(yùn)行后的輸出結(jié)果是

A6,1B2,1C6,0D2,0

18.若定義floata;現(xiàn)要從鍵盤輸入a的數(shù)據(jù),其整數(shù)位為3位,小數(shù)位為2

位,則選用(

A)scanf&a);B)scanf("%5.2f",a);

C)scanf("%6.2f",&a);D)scanfa);

19.若定義inti;則以下循環(huán)語句的循環(huán)執(zhí)行次數(shù)是()。

for(i=2;i==0;)

printf("%d”,i一);

A)無限次B)0次

C)1次D)2次

20.下面程序段—

x=3;

do

y=x--;

if(!y){printf(nxn);continue;}

printf。#");

while(l<=x<=2);

A)將輸出##B)將輸出##*

C)是死循環(huán)D)含有不合法的控制表達(dá)式

21.以F程序中,while循環(huán)的循環(huán)次數(shù)是()。

ttinclude“stdio.h"

main()

{inti=0;

while(i<10)

{if(i<l)continue;

if(i==5)break;

i++;

I

)

A、1B、10C、6D、死循環(huán),不能確定次數(shù)

N22.有以下程序:

ttinclude"stdio.h"

inta=3;

main()

(

ints=0;

(

inta=5;

s+=a++;

}

s+=a++;printf(〃%d\n〃,s);

)

程序運(yùn)行后的輸出結(jié)果是()。

A、8B、10C、7D、11

23(4)下面程序段的運(yùn)行結(jié)果是()

main()

{inta=ll,b=10,c=0;

a/=b+(b&&c);

printf(%d\n"a);}

A.OB.lC.l.lD.ll

24(5)兩次運(yùn)行下面程序,如果從鍵盤上分別輸入6和4,則程序的輸出結(jié)果是()

main()

{intx;

scanf(u%d”,&x);

if(x++>5)printf("%d",x);

elseprintf(,f%d\n",x-l);}

A.7和5B.6和3C.7和4D.6和4

(6)語句while(!e);中,條件!e等價(jià)于()

A.e=OB.e!=OC.e!=lD.e==O

R25下面程序的輸出是

main()

intk=l1;

printf("k=%d,k=%o,k=%x\n",k,k,k);

A)k=ll,k=12,k=13B)k=ll,k=13,k=13

C)k=ll,k=013,k=oXbD)k=ll,k=13,k=b

26(7)下面程序的運(yùn)行結(jié)果是()

main()

{inti=l,sum=0;

lop:sum=sum+i;

i=i+2;

if(i<6)gotolop;

printf(sum=%d\n”,sum);}

A.sum=4B.sum=9C.sum=16D.sum=25

27.以下程序的輸出結(jié)果是

voidmain(){

inta=2,b=5;

),

printfC*a=%%%d,b=%%%dIa,b);

)

A)a=%2,b=%5B)a=2,b=5

C)a=%%d,b=%%dD)a=%d,b=%d

28執(zhí)行下面的程序后,a的值為

main()

{inta,b;

for(a=l,b=l;a<100;a++)

{

if(b>=20)break;

if(b%3==l)

{b+=3;continue;}

b-=5;

)

}

A)7B)8

C)9D)10

29

30.下面的程序會(huì)()

main()

{intx=3,y=0,z=0;

if(x=y+z)printf("****");

elseprintf("####");

}

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

C、可以通過編譯,但不能通過連接,因而不能運(yùn)行D、輸出####

4.以下程序的輸出結(jié)果是()

main()

{intx=10,y=10,i;

for(i=0;x>8;y=++i)

printf("%d%d,,,x—,y);

A、10192B>9876C>10990D>101091

1.下面程序的輸出是

main()

(

intk=ll;

printf(nk=%d,k=%o,k=%x\n",k,k,k);

)

A)k=ll,k=12,k=13B)k=ll,k=13,k=13

C)k=ll,k=013,k=oXbD)k=ll,k=13,k=b

2.兩次運(yùn)行下面的程序,如果從鍵盤上分別輸入6和4,則輸出結(jié)果是一

main()

(

intx;

scanf(n%d",&xn);

if(x++>5)printf(n%dH,x)

elseprintf(n%d\nn,x—);

)

A)7和5B)6和3

C)7和4D)6和4

3.讀程序

#include''stdio.h"

main()

{inta;floatb,c;

scanf("%2d%3f%4f",&a,&b,&c);

printf("\na=%d,b=%f,c=%f\n",a,b,c);

)

若運(yùn)行時(shí)從鍵盤上輸入9876543210<CR>(<CR>表示回車),則上面程序的輸出結(jié)

果是_____

A)a=98,b=765,c=4321

B)a=l,b=432,c=8765

C)a=98,b=765.000000,c=4321.000000

D)a=98,b=765.0,c=4321.0

5.下面程序的輸出是一

main()

{intx=3,y=6,a=0;

while(x++!=(y-=l))

(

a+=l;

if(y<x)break;

}

printf(,,x=%d,y=%d,a=%d\n",x,y,a);

A)x=4,y=4,a=lB)x=5,y=5,a=l

C)=,y=4,a=3D)x=5,y=4,a=l

6.

7.

8.

8.

三、程序填空題

F1.以下程序可判斷輸入的一個(gè)整數(shù)是否能被3或7整除,若能整除,輸出

“yes”,否則輸出“no”。請(qǐng)?zhí)羁铡?/p>

#include"stdio.h"

voidmain()

(

intk;

printf("Enteraintnumber:w);

scanf("%d",v&k>);

if(<k%3==0llk%7==0>)

printf("yes\n”);

else

printf("no\n");

)

N2.下面程序的功能是計(jì)算1-3+5-7+.......-99+101的值。

main()

(

inti,t=l,s=O;

for(i=l;i<=101;i+=2)

{

t=<t*i>;

s=s+t;

t=<-t>;

)

printf(',%d\n,,,s);

)

F3.下面程序的功能是從鍵盤上輸入若干學(xué)生的學(xué)習(xí)成績(jī),統(tǒng)計(jì)并輸出最高成績(jī)

和最低成績(jī),當(dāng)輸入為負(fù)數(shù)時(shí)結(jié)束輸入。

main()

{floatx,amax,amin;

scanf("%f”,&x);

amax=x;

amin=x;

while(<x>=0>)

{if(x>amax)amax=x;

if(<x<amin>)amin=x;

scanf(n%f';&x);

)

printf(M\namax=%f\namin=%f\nn,amax,amin);

}

F4.下面程序的功能是計(jì)算100至1000之間有多少個(gè)數(shù)其各位數(shù)字之和是5。

#include“stdio.h"

voidmain()

(

inti,s,k,count=0;

for(i=100;i<=1000;i++)

(

s=0;

k=i;

while(k)

(

s=s+k%10;

k=<k/10>;

)

if(<s==5>)count++;

)

printf(u%dn,count);

}

F5下列程序功能是求數(shù)組中主對(duì)角線元素之和,請(qǐng)補(bǔ)充完成

main()

{inta[3][3],i,j,s=0;

for(i=0;i<3;i++)

for(j=0;j<3;j++)

scanf("%d';<&a[i]rj]>);

for(i=0;i<3;i++)

for(j=0;j<3;j++)

if(<i==j>)

s+=a[i][j];

printf(us=%d\n';s);

R6.下面程序的功能是:輸入一個(gè)字符,如果它是一個(gè)大寫字母,則把它變

成小寫字母,如果它是一個(gè)小寫字母,則把它變成大寫字母,其它字符不變,請(qǐng)

將程序補(bǔ)充完整:

main()

{charch;

scanf("%c”,&ch);

ifCh>='A'&&ch<='Z')ch=ch+32;

elseifKch>='a'&&chv='z'>)

<ch=ch-32>;

printfC6%c,,,ch);

R7.請(qǐng)將用戶輸入的x,y,z三個(gè)整數(shù)按照從小到大的順序排列

main()

(

intx,y,z,t;

scanf(”%d,%d,%d”,&x,&y,&z);

if(x>y)

{t=y;y=x;x=t;}

if(<x>z>)

{t=z;z=x;x=t;}

if(<y>z>)

{t=y;y=z;z=t;}

printf(nsmalltobig:%d,%d,%d\nn,x,y,z);

)

F8.以下程序從讀入的整數(shù)數(shù)據(jù)中,統(tǒng)計(jì)大于零的整數(shù)個(gè)數(shù)和小于零的整數(shù)個(gè)

數(shù)。用輸入零來結(jié)束輸入,程序中用i統(tǒng)計(jì)大于零的個(gè)數(shù),用變量j統(tǒng)計(jì)小于零

的整數(shù)。請(qǐng)?zhí)羁铡?/p>

voidmain()

{intn,i,j;

i=0;j=0;

printf(EnterINTnumbers,with0toend\n");

scanf("%d”,&n);

while(<n!=0>)

{if(n>0)i=i++;

if(n<0)j=j++;

vscanf(“%d”

printf(ai=%4dj=%4d\nw,i,j);

F^.以下程序用“輾轉(zhuǎn)相除法”來求出兩個(gè)正整數(shù)的最大公約數(shù)。請(qǐng)?zhí)羁?。?/p>

兩個(gè)數(shù)分別放在m和n中,求最大公約數(shù)的算法如下:

(1)將兩數(shù)中最大的那個(gè)放在m中,小的放在n中。

(2)求出m被n除后的余數(shù)to

(3)若余數(shù)為0則執(zhí)行步驟(7);否則執(zhí)行步驟(4)。

(4)把除數(shù)作為新的被除數(shù);把余數(shù)作為新的除數(shù)。

(5)求出新的余數(shù)r。

(6)重復(fù)步驟(3)到(5)。

(7)輸出n,n即為最大公約數(shù)。

voidmain()

{intrm,n;

printf("Enterm,n:");

scanf("%d%d”,<&m,&n>);

printf(um=%dn=%d\nn,m,n);

if(m<n)

{r=m;m=n;n=r;}

r=<m/n>;

while(r!=0)

{m=n,n=r,r=m;}

printf(uH.C.F=%d\n,n);

)

RIO.以下程序可判斷輸入的一個(gè)字符是否為小寫字母,如果是,則轉(zhuǎn)換為對(duì)應(yīng)

的大寫字母并輸出;否則,就原樣輸出。請(qǐng)?zhí)羁铡?/p>

#include“stdio.h”

voidmain()

{chark;

printf("Enteracharacterhere:");

scanf(“%c”,<&k>);

if(vk>='a'&&k<=,z,>)

printf("%c\n”,k-32);

else

printf(u%c\nv,k);

1.程序打印如卜.形式的圖形

**

***

****

main()

{for(inti=l;i<=4;i++)

{for(intj=1;①;i++)

printf((g));

Drintf(③):

)

}

2.充下列程序,找出100—200之間的全部素?cái)?shù)

#include"math.h"

main()

{intrqk,i,n=0;

for(m=101;m<=200;m=m+2)

{

k=sqrt(m);

for(i=2;(6);i++)

if((7))break;

if((8))

{printf("%d”,m);

n=n+l;}

if(i%10==0)printf("\n”);

)

printf("\n”);

)

3.

第三章數(shù)組

一、判斷題

1.字符串“girl”大于字符串“good”。

2.C語言中有字符串變量,與字符數(shù)組等價(jià)。()

R3.同一數(shù)組可以存儲(chǔ)不同類型的值。()

N4.若有:inta[2][3]:則a+1和a[l]的值以及類型都一樣。()

R5.字符'\0'的值就是0。0

6.C語言中是用字符串變量來存放字符串。()

7.表達(dá)式sizeof("abc")的值是4。0

N8.同數(shù)組的名字一樣,函數(shù)的名字也是一種指針。()

9、C語言中在定義數(shù)組時(shí),一個(gè)數(shù)組的數(shù)組元素的數(shù)據(jù)類型可以不相同;

10、chara[10];a[10]=9;上述語句編譯不會(huì)出錯(cuò);

R1L數(shù)組元素的下標(biāo)是從1開始標(biāo)號(hào)的。()

N12.若a為一維數(shù)組名,則*(a+i)與a[i]等價(jià)。()

13.循環(huán)語句中的continue語句的作用是結(jié)束整個(gè)循環(huán)。()

14.字符串"That"小于字符串"the"。()

15.字符個(gè)數(shù)多的字符串比字符個(gè)數(shù)少的字符串大。()

有以下語句:intb;char則正確的輸入語句是

16)scanf("%d%s",&b,&c);17)scanf("%d%s",&b,c);

18)scanf("%d%s",b,c);19)scanf("%d%s",b,&c);

已有定義:charaf]="xyz",bn={M,y,N};,以下敘述中正確的是

20數(shù)組a和b的長(zhǎng)度相同21a數(shù)組長(zhǎng)度小于b數(shù)組長(zhǎng)度

22a數(shù)組長(zhǎng)度大于b數(shù)組長(zhǎng)度

strlen(a)==strlen(b)=3

設(shè)有數(shù)組定義:chararray[]="China";則數(shù)組array所占的存貯空間為個(gè)字

節(jié).

23424525

溫馨提示

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