國二c語言筆試題庫_第1頁
國二c語言筆試題庫_第2頁
國二c語言筆試題庫_第3頁
國二c語言筆試題庫_第4頁
國二c語言筆試題庫_第5頁
已閱讀5頁,還剩96頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第一章C語言概述

一單項選擇題

1.一個C程序的執(zhí)行是從()?

A)本程序的main函數(shù)開始,到main函數(shù)結(jié)束

B)本程序文件的第一個函數(shù)開始,到本程序文件的最后一個函數(shù)結(jié)束

0本程序的main函數(shù)開始,到本程序文件的最后一個函數(shù)結(jié)束

D)本程序文件的第一個函數(shù)開始,到本程序的main函數(shù)結(jié)束

2.以下敘述正確的是()。

A)在C程序中,main函數(shù)必須位于程序的最前面

B)C程序的每行中只能寫一條語句

0C語言本身沒有輸入輸出語句

D)在對一個C程序進行編譯的過程中,可發(fā)現(xiàn)注釋中的拼寫錯誤

3.以下敘述不正確的是()6

A)一個C源程序可由一個或多個函數(shù)組成

B)一個C源程序必須包含一個main函數(shù)

0C程序的基本組成單位是函數(shù)

D)在C程序中,注釋說明只能位于一條語句的后面

4.C語言規(guī)定,在一個源程序中,main函數(shù)的位置()。

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

0可以任意D)必須在最后

5.一個C語言源程序是由().

A)一個主程序和若干子程序組成B)函數(shù)組成

0若干過程組成D)若干子程序組成

二填空題

1.C源程序的基本單位是函數(shù)0

2.一個C源程序中至少應(yīng)包括一個main函數(shù)。

3.在一個C源程序中,注釋部分兩側(cè)的分界符分別為/和*/.

4.一個函數(shù)是由兩部分組成的,它們分別是函數(shù)首部和函數(shù)體。

5.在C語言中,一個函數(shù)的函數(shù)體一般包括聲明部分和執(zhí)行部分。

6.在每個C語句和數(shù)據(jù)定義的最后必須有一個:。

7.C語言本身沒有輸入輸出語句。其輸入輸出是由函數(shù)來完成。

8.程序是指一組能使計算機識別和執(zhí)行的指令,每一個指令都使計算機能夠執(zhí)行相應(yīng)

的操作。。

9.源程序是指用高級語言編寫的程序。C

源程序文件的擴展名為.c°

10.目標(biāo)程序是指計算機不能識別和執(zhí)行高級語言程序,只能通過高編譯系統(tǒng)將高級

語言程序轉(zhuǎn)化為二進制的目標(biāo)程序。目標(biāo)程

序文件的擴展名為.obj。

11.可執(zhí)行程序是指將日標(biāo)函數(shù)和系統(tǒng)的函數(shù)庫以及其它日標(biāo)函數(shù)鏈接起來行程可

執(zhí)行程序o可執(zhí)行程序文件的擴展名

為.exe?

12.上機運行一個C源程序的步驟一般為:①輸入和編輯源程序_________________:

②編譯源程序;③連接庫函數(shù);④生成

可執(zhí)行程序。

第三章數(shù)據(jù)類型、運算符與表達式

一單項選擇題

1.下面四個選項中,均不是c語言關(guān)鍵字的選項是()0

A)defineIFTypeB)getccharprintf

C)includescanfcaseD)whilegopow

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

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

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

3.下列四個選項中,均是C語言關(guān)鍵字的選項是(,

A)autoenumincludeB)switchtypedefcontinue

C)signedunionscanfD)ifstructtype

4.下面四個選項中,均是不合法的用戶標(biāo)識符的選項是(

A)AP_0doB)floatlaO_A

C)b-agotointD)123tempint

5.以下有4組用戶標(biāo)識符,其中合法的一組是()。

A)For-subCaseB)4dDOSize

C)f2_G3IFabcD)WORDvoiddefine

6.下列選項中,合法的C語言關(guān)鍵字是()。

A)VARB)cherC)integerD)default

7.下面四個選項中,均是合法整型常量的選項是()。

A)160-OxffffOilB)-OxcdfOlaOxe

0-019860120668D)-0x48a0x2e5Oxe

8.下面四個選項中,均是正確的八進制數(shù)或十六進制數(shù)的選項是()o

A)-100x8f-OilB)Oabc-017Oxc

C)010-0x11OxflD)0al2-0x123-Oxa

9.設(shè)C語言中,一個int型數(shù)據(jù)在內(nèi)存中占2個字節(jié),則unsignedint型數(shù)據(jù)的取值范

圍為(

A)0-255B)0-32767C)0-65535D)0-2147483647

10.在C語言中,不正確的int類型的常數(shù)是(

A)32768B)0C)037D)OxAF(11101111=128+64+32+8+4+2+1)

11.下面四個選項中,均是不合法的整型常量的選項是(

A)-Ofl-Oxffff0011B)-Oxcdf01712456

0-0189995e2D)-0x48eg-06803f

12.下面四個選項中,均是不合法的浮點數(shù)的選項是(

B)1

D)-e3.234le3

13.下面四個選項中,均是合法的浮點數(shù)的選項是()。

14.下列變量定義中合法的是()。

B)doubleb=l+

C)longdo=0xfdaL;D)float2and=l-e-3;

15.以下選項中合法的字符常量是(

A)"B"B)<\010,C)68D)D

16.以下選項中,非法的字符常量是()o

A)''t'B)'\17'C)"n"D)'\xaa'

17.以下所列的C語言常量中,錯誤的是()o

A)OxFFC)2LD)'\72'

18.在C語言中,char型數(shù)據(jù)在內(nèi)存中的存儲形式是()。

A)補碼B)反碼0原碼D)ASCII碼

19.下面四個選項中,均是合法轉(zhuǎn)義字符的選項是()。

A)'V''\\'''n'B)'\'''017'

C)''f',xab'D)'\\0''xlf'

20.下面四個選項中,均是不合法的轉(zhuǎn)義字符的選項是(

A)'\xUB)''1011'''a'

0^oirD)'\abc''xlf'

21.下面正確的字符常量是()。

A)"c"B)'C)中'D)

22.下面四個選項中,均是正確的數(shù)值常量或字符常量的選項是()。

Of'&'B)匕'''

C)'3'011OxffOO0aD)+001Oxabcd2e250.

23.下面不正確的字符串常量是()

A)匕be'B)”1212”C)"0"D)””

24.在C語言中(以16位PC機為例),5種基本數(shù)據(jù)類型的存儲空間長度的排列順序為()。

A)char<int<longint<=float<double

B)char=int<longint<=float<double

C)char<int<longint=float=double

D)char=int=longint<=float<double

25.若有說明語句:charc='\72';則變量c()?

A)包含1個字符B)包含2個字符

0包含3個字符D)說明不合法,C的值不確定

26.設(shè)變量a是整型,f是實型,i是雙精度型,則表達式10+a+i*f值的數(shù)據(jù)類型為(

A)intB)floatC)doub1eD)不確定

27.表達式值的數(shù)據(jù)類型為()o

A)intB)floatC)doubleD)不確定

28.設(shè)有說明:charw;intx;floaty;doublez;則表達式w*x+z-y值的數(shù)據(jù)類

型為()o

A)floatB)charC)intD)double

29.以下選項中屬于C語言的數(shù)據(jù)類型是(

A)復(fù)數(shù)型B)邏輯型0雙精度型D)集合型

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

main()

(

charc='z';

printf(“為c",c-25);

}

A)aB)ZC)z-25D)y

31.若有定義:inta=7;float則表達式x+a%3*(int)(x+y)%2/4的值是C

B)

32.若有代數(shù)式3ae/bc,則不正確的c語言表達式是()。

A)a/b/c*e*3B)3*a*e/b/cC)3*a*e/b*cD)a*e/c/b*3

33.設(shè)有intx=ll;則表達式(x++?1/3)的值是(

A)3B)4C)11D)12

34.以下變量x.、y、z均為double類型且已正確賦值,不能正確表示數(shù)學(xué)式子x/yz的C

語言表達式是().

A)x/y*zB)x*(l/(y*z))C)x/y*l/zD)x/y/z

35.C語言中運算對象必須是整型的運算符是()。

A)%=B)/C)=D)<=

36.下列程序的輸出結(jié)果是()o

mainO

printf(*%d\n*?d*y);

A)300

37.若x,i,j和k都是int型變量,則計算下面表達式x=(i=4,j=16,k=32)后,x的

值為()。

A)4B)16C)32D)52

38.假設(shè)所有變量均為整型,則表達式(a=2,b=5,b++,a+b)的值是(

A)7B)8C)6D)2

39.假定x和y為double型,則表達式x=2,y=x+3/2的值是()o

B)3

40.若以下變量均是整型,且num=sum=7;則計算表達式sum=num++,sum++,++num后sum

的值為()o

A)7B)8C)9D)10

41.若有定義intk=7,x=12;,則以下能使值為3的表達式是(

A)x%=(k%=5)B)x%=(k-k%5)C)x%=k-k%5D)(x%=k)-(k%=5)

42.設(shè)以下變量均為int類型,則值不等于7的表達式是()。

A)(x=y=6,x+y,x+1)B)(x=y=6,x+y,y+1)

0(x=6,x+1,y=6,x+y)D)(y=6,y+1,x=y,x+1)

43.下列程序執(zhí)行后的輸出結(jié)果是(

main()

(

intx='f';

printf(<<%c\nw,'A'+(x-'a'+1));

)

A)GB)HC)ID)J

44.下列程序執(zhí)行后的輸出結(jié)果是().

main()

{charx=OxFFFF;printf(*%d\n”,x-);}

A)-32767B)FFFEC)-1D)-32768

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

mainO

{inta=3;

printf(a+=a-=a*a));

}

A)-6B)12C)0D)-12

46.若變量己正確定義并賦值,下面符合C語言語法的表達式是(

A)a:=b+lB)a=b=c+2D)a=a+7=c+b

47.若有以下程序段,

intcl=l,c2=2,c3;

則執(zhí)行后,c3中的值是(),

A)0B)C)1D)2

48.有如下程序

main()

{inty=3,x=3,z=l;

printf(M%d%d\n”,(++x,y++),z+2);

運行該程序的輸出結(jié)果是(

A)34B)42043D)33

49.已知大寫字母A的ASCH碼為65,以下程序的運行結(jié)果為()。

main()

(

charcl='A',c2='Y';

printf(<4%d,%d\n>,,cl,c2);

)

A)65,89B)A,YC)65,88D)65,90

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

main()

inta=010,b=10;

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

)

A)10,10B)8,10C)10,9D)8,9

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

main()

(

inta,b;

a=100;b=200;

printf(<<%d\nw,(a,b));

)

A)100B)200C)20000D)100=200

52.執(zhí)行語句y=10;x=y++;的結(jié)果是(

A)x=10,y=10B)x=ll,y=llC)x=IO,y=llD)x=ll,y=10

53.在表示C語言的整型變量時,表示“無符號長整型”的符號是()。

A)unsignedintB)unsignedshort

C)longintD)unsignedlong

54.在下列形式的常數(shù)中,C程序不允許出現(xiàn)的是()。

A).45B)±123D)4e3

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

main()

inti;

i=(int)x;

printf(“x=%f,i=%d”,x,i);

56.在C語言中,要求運算數(shù)必須是整型數(shù)據(jù)的運算符是()。

A)/B)%C)!D)<

57.執(zhí)行下列語句的結(jié)果是()o

i=3;

printf(a%d,w,++i);

printf("%d,i++);

A)3,3B)3,4C)4,3D)4,4

58.已知x=3,y=2,則表達式x*=y+8的值為()。

A)3B)2C)30D)14

59.執(zhí)行語句inti=65536;printf(tt%d\nw,i);的結(jié)果是()?

A)65536B)0C)有語法錯誤,無輸出結(jié)果D)-1

60.在C語言中,不正確的int類型的常數(shù)是()o

A)32768B)0C)037D)OxAF

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

A)swicthB)chanC)CaseD)default

62.表示“在使用x之前,先使x的值加1”的正確方式是()o

A)++xB)x++C)+xD)+x+

63.設(shè)x的值為5,則表達式(++x)+(++x)+(++x)的值是(),>

A)24B)20C)15D)21

64.在C語言中,合法的字符常量是()。

A)''084'B)'\x43'(十六進制)0'ab'D)“\0”

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

A)1B)2

66.若t為double類型,表達式t=l,t+5,t++的值是()o

A)1B)

67.若有以下定義和語句,則輸出結(jié)果是(

charcl='b',c2='e';

printf(4<%d,%c\nw,c2-cl,c2-Fa'+'A');

A)2,MB)3,E

C)2,ED)輸出項與對應(yīng)的格式控制不一致,輸出結(jié)果不確定

68.設(shè)有如下的變量定義:

inti=8,a,b:

則以下符合C語言語法的表達式是()。

A)a+=a-=(b=4)*(a=3)B)x%(-3)

0a=a*3=2D)y=float(i)

69.若有以下定義和語句:

intu=010,v=OxlO,w=10;

printf($d,,u,v,w);()

則輸出結(jié)果是()。

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

二填空題

1.若x和a均是int型變量,則計算表達式⑴后的x值為12,計算表達式(2)后的

x值為4°

(1)x=(a=4,6*2)

(2)x=a=4,6*2

2.若a是int型變量,則表達式(a=4*5,a*2),a+6的值為260

3.若b是int型變量,則表達式b=25/3$3的值為20

4.若s是int型變量,且s=6則下面表達式s%2+(s+l)%2的值為1。

5.若a,b和c均是int型變量,則計算表達式a=(b=4)+(c=2)后,a值為6,b值

為4,c值為2。

6.若x和n均是int型變量,且x和n的初值均為5,則計算表達式x+=n++后x的值為

IP,n的值為」。

7.若有定義:i則表達式a+(int)(b/3*(int)(a+c)/2)%4的值為。

8.若有定義:則表達式(float)(a+b)/2+(int)x%(int)y的值為。

9.若有定義:則表達式(x+y)%2+(int)a/(int)b的值為。

10.若x和n均是整型變量,且x的初值為12,n的初值為5,則計算表達式戒=(n%=2)后

x的值為0°

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

main()

{unsignedshorta=65536;intb;

printf(a%d\nw,b=a);}

12.請寫出數(shù)學(xué)式a/式的C語言表達式a/(b*c)。

13.設(shè)a、b、c為整型數(shù),且a=2、b=3、c=4,則執(zhí)行完語句a*=16+(b++)-(++c)后,a的

值是280

第四章最簡單的C程序設(shè)計一一順序程序設(shè)計

一單項選擇題

1.printf函數(shù)中用到格式符%5s,其中數(shù)字5表示輸出的字符串占用5列,如果字符串長

度大于5,則輸出按方式()o

A)從左起輸出該字符串,右補空格

B)按原字符長從左向右全部輸出

0右對齊輸出該字串,左補空格

D)輸出錯誤信息

2.已有定義inta=-2;和輸出語句printf(?%8xw,a);以下正確的敘述是()。

A)整型變量的輸出形式只有%d一種

B)炮是格式符的一種,它可以適用于任何一種類型的數(shù)據(jù)

0姒是格式符的一種,其變量的值按十六進制輸出,但燒x是錯誤的

D)%8x不是錯誤的格式符,其中數(shù)字8規(guī)定了輸出字段的寬度

3.若x,y均定義成int型,z定義為double型,以下不合法的scanf函數(shù)調(diào)用語句是

(

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

B)scanf(“%2d*%d,%lf”,&x,&y,&z);

C)scanf(M%x%*d%o”,&x,&y);

D)scanf(M%x%o%",&x,&y,&z);(雙精度型用%le,或者%lf)

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

main()

{intk=17;

printf(*%d,%o,%x\rT,k,k,k);

)

A)17,021,OxllB)17,17,17

B)17,0x11,021D)17,21,11

5.下列程序的運行結(jié)果是(

main()

{inta=2,c=5;

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

)

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

C)a=d,b=dD)a=2,c=5

6.語句printf("a\bre\'hi\'y\\\bou\n");的輸出結(jié)果是()?(說明:‘\b'是退格符)

A)a\bre\'hi\'y\\\bouB)a\bre\'hi\'y\bou

C)re'hi'youD)abre'hi'y\bou

7.x、y、z被定義為int型變量,若從鍵盤給x、y、z輸入數(shù)據(jù),正確的輸入語句是()。

A)INPUTx、y^z:B)scanf(飛d%d%d",&x,&y,&z);

C)scanf(飛d%d*d”,x,y,z);D)read(*%d%d%d*,&x,&y,&z);

8.若變量已正確說明為float類型,要通過語句scanf("%f%f“,&a,&b,&c);給a賦

于,b賦予,c賦予,不正確的輸入形式是():

A)10<回車)回車〉

22<回車)

33〈回車>

回車》D)1022<回車)

回車〉33〈回車>

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

main()

(

intn;

(n=6*4,n+6),n*2;

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

A)24B)12C)26D)20

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

main()

(

intx=2,y,z;

x*=3+l;

printf(“喘d,”,x++);

x+=y=z=5:

printf(u%d,n,x);

x=y=z;

printf(a%d\nw,x);

}

A)8,14,1B)8,14,5C)8,13,5D)9,14,5

11.下面程序的輸出結(jié)果是()o

main()

(

intx,y,z;

x=O;y=z=-l;

x+=-z—y;{(-z-)-y}

printf(wx=%d\nw,x);

}

A)x=4B)x=0C)x=2D)x=3

12.設(shè)x為int型變量,則執(zhí)行語句x=10;x+=x-=x-x;后,x的值為()。

A)10B)20C)40D)30

13.只能向終端輸出一個字符的函數(shù)是()。

A)printf函數(shù)B)putchar函數(shù)

C)getchar函數(shù)D)scanf函數(shù)

14.下列程序執(zhí)行后的輸出結(jié)果是(小數(shù)點后只寫一位)()。

main()

{doubled;floatf;long1;inti;

i=f=l=d=20/3;

printf%ld%f%f\n”,i,1,f,cl);

}

A)

15.在下列敘述中,錯誤的一條是(

A)prinlf函數(shù)可以向終端輸出若干個任意類型的數(shù)據(jù)

B)putchar函數(shù)只能向終端輸出字符,而且只能是一個字符

0getchar函數(shù)只能用來輸入字符,但字符的個數(shù)不限

D)scanf函數(shù)可以用來輸入任何類型的多個數(shù)據(jù)

16.以下程序的輸出結(jié)果為()。

main()

charcl='a',c2='b',c3='c';

printf(<*a%cb%c\tc%c\nw,cl,c2,c3);

}

A)abcabcabcB)aabbccC)abcD)aaaabb

17.若輸入12345和abc,以下程序的輸出結(jié)果是()。

main()

(

inta;

charch;

scanf("%3d%3c”,&a,&ch);

printf(rt%d,%c”,a,ch);

)

A)123,abcB)123,4C)123,aD)12345,abc

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

main()

(

unsignedxl;

intb=-1;

xl=b;

printf("u”,xl);

}

A)%uB)-1C)%u-lD)65535

19.在printf函數(shù)中用來輸出十六進制無符號整數(shù)的格式字符是(

A)d格式符B)x格式符C)u格式符D)。格式符

20.設(shè)a=12、b=12345,執(zhí)行語句printf(“財d,%4d”,a,b)的輸出結(jié)果為(

A)12,123B)12,12345C)12,1234D)12,123456

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

main()

(

inta=l,b=4,c=2;

printf(a%f\nw,z);

}

B)

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

mainO

inta=2,c=5;

printf(ua=%%d,b=%%d\nM,a,c);

)

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

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

23.請讀程序:

main()

(

inta;

floatb,c;

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

printf(w\na=%d,b=%f,c=%f\nM,a,b,c);

}

若運行時從鍵盤上輸入9876543210〈CR>(<CR>表示回車),則上面程序的輸出結(jié)果是()。

A)a=98,6=765,c=4321B)a=10,b=432,c=8765

D)

24.若有定義:intx,y;chara,b,c;并有以下輸入數(shù)據(jù)(此處<CR〉代表回車,U代

表空格):

1U2<CR>

AUBUC<CR>

則能給x賦整數(shù)1,給y賦整數(shù)2,給a賦字符A,給b賦字符B,給c賦字符C的正確程

序段是(

A)scanf(Mx=%(l,y=%d",&x,&y);a=getchar();b=getchar();c=getchar();

B)scanf(,&x,&y);a=getchar();b=getchar();c=getchar();

C)scanf(a%d%d%c%c%cw,&x,&y,&a,&b,&c);

D)scanf(<<%d%d%c%c%c%c%c%cn,&x,&y,&a,&a,&b,&b,&c,&c);

25.下列可作為C語言賦值語句的是()。

A)x=3,y=5;B)a=b=6C)i—;D)y=int(x);

26.設(shè)i是int型變量,f是float型變量,用下面的語句給這兩個變量輸入值:

scanf(tti=%d,f=%f",&i,&f);

為了把100和分別賦給i和f,則正確的輸入為(

A)100<空格回車》B)100,7回車〉

0100〈回車回車〉D)x=100〈回車回車)

27.以下敘述中正確的是()。

A)輸入項可以是一個實型常量,例如:

B)只有格式控制,沒有輸入項,也能正確輸入數(shù)據(jù)到內(nèi)存,例如:scanf("a=%d,b=%d");

0當(dāng)輸入一個實型數(shù)據(jù)時,格式控制部分可以規(guī)定小數(shù)點后的位數(shù),例如:scanf("%”,

&f);

D)當(dāng)輸入數(shù)據(jù)時,必須指明變量地址,例如:scanf("%f",&f);

28.設(shè)x和y均為int型變量,則以下語句;x+=y;y=x-y;x-=y;的功能是()。

A)把x和y按從小到大排序B)把x和y按從大到小排序

0無確定結(jié)果D)交換x和y中的值

二填空題

1下面程序的運行結(jié)果是

i:dcc=-4,oc1=17774,hcx=fT「fc,unsigncd=65532。

main()

(

shorti;

i=-4;

printf(a\ni:dec=%d,oct=%o,hex=%x,unsigned=%u\nw,i,i,i,i);

)

2.若想通過以下輸入語句使,b=4,c=3,則輸入數(shù)據(jù)的形式應(yīng)該是。

intb,c;floata;

scanf(*%f>%d,c=%d",&a,&b,&c):

3.下列程序的輸出結(jié)果是,請?zhí)羁铡?/p>

main()

{inta=9,b=2;

floatx=

z=a/2+b*x/y+l/2:(1/2=0,a/2=4)

printfz);

}

4.在printf格式字符中,只能輸出一個字符的格式字符是枇:用于輸出字符串的

格式字符是一%s:以小數(shù)形式輸出實數(shù)的格式字符是:以標(biāo)準(zhǔn)指數(shù)形式

輸出實數(shù)的格式字符是%e。

三編程題

1.若a.想得到以下的輸出格式和結(jié)果,請寫出完整的程序(包括定義變量類型和設(shè)計輸

出)。

要求輸出的結(jié)果如下:

a=<空格〉3<空格><空格>b=<空格〉4<空格><空格)c=〈空格>5

x+y=<空格空格><空格空格X空格

u=<空格>51274〈空格><空格>n=<空格><空格X空格>128756

cl=a<空格>01'<空格>9765(:11)

c2=B<空格>or<空格>98(ASCII)

2.輸入一個華氏溫度,要求輸出攝氏溫度。公式為

輸出要有文字說明,取2位小數(shù)。

3.編程序,用getchar函數(shù)讀入兩個字符給cl、c2,然后分別用putchar函數(shù)和printf

函數(shù)輸出這兩個字符。

三編程題

1.解:

mainO

(

inta=3,b=4,c=5;

longintu=51274,n=128765;

charcl='a',c2=,b';

printf("\n");

printf(wa=%2db=%2dc=%2d\nw,a,b,c);

printf(ux=%,y=%,c=%\n”,x,y,z);

printf(rtx+y=%y+z=%z+x=%\nw,x+y,y+z,z+x);

printf(au=%61dn=%91d\nw,u,n);

printf(Mcl=%cor%d(ASCII)\nM,cl,cl);

printf(rtc2=%cor刎(ASClD\n”,c2,c2);

}

2.解:

main()

{

floatc,f;

printf(“請輸入一個華氏溫度:\n”);

scanf(“舟f”,&f);

printf(“攝氏溫度為:%.2f\nw,c);

}

3.解:

main()

(

charcl,c2;

printf(“請輸入兩個字符給cl和c2:\n");

cl=getchar();

c2=getchar();

printf(“用putchar函數(shù)輸出結(jié)果為:\n");

putchar(cl);

putchar(c2);

printf("\n用printf函數(shù)輸出結(jié)果為:\nw);

printf(rt%c,%c\nM,cl,c2);

}

第五章選擇結(jié)構(gòu)程序設(shè)計

-單項選擇題

1.邏輯運算符兩側(cè)運算對象的數(shù)據(jù)類型是()o

A)只能是0或1

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

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

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

2.已知x=43,ch='A',y=0;則表達式(x〉=y&&ch〈'B'&&!y)的值是(

A)0B)語法錯C)1D)“假”

3.已知intx=10,戶20,z=30;以下語句執(zhí)行后x,y,z的值是()。

if(x>y)

z=x;x=y;y=z;

A)x=10,y=20,z=30B)x=20,y=30,z=30

C)x=20,y=30,z=10D)x=20,y=30,z=20

4.執(zhí)行下列語句后a的值為(),b的值為()?

inta,b,c;

a=b=c=l;

++a||++b&&++c;

A)錯誤1B)22C)21D)11

5.若希望當(dāng)A的值為奇數(shù)時,表達式的值為“真”,A的值為偶數(shù)時,表達式的值為“假。

則以下不能滿足要求的表達式是()o

A)A%2==1B)!(A%2==0)C)!(A%2)D)A%2

6.設(shè)有:inta=l,b=2,c=3,d=4,m=2,n=2;執(zhí)行(m=a〉b)&&(n=c>d)后n的值是(6

A)0B)2C)3D)4

7.判斷char型變量cl是否為小寫字母的正確表達式是()。

A)'a'<=cl<='z'B)(cl>=a)&&(cl<=z)

0('a'>=cl)||('z'<=cl)D)(cl>='a')&&(cl<='z')

8.以下不正確的if語句形式是()?

A)if(x>y&&x!=y);

B)if(x==y)x+=y;

C)if(x!=y)scanf("%d",&x)elsescanf(MWf,&y)

D)if(x<y){x++;y++;}

9.請閱讀以下程序:

mainO

(

inta=5,b=0>c=0;

if(a=b+c)printf(w***\nw);

elseprintf(rt$$S\nw);

}

以上程序()o

A)有語法錯不能通過編譯

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

0輸出***

D)輸出$$$

10.當(dāng)a=l,b=3,c=5,d=4時,執(zhí)行完下面一段程序后x的值是(

if(a<b)

if(c<d)x=l;

else

if(a<c)

if(b<d)x=2;

elsex=3;

elsex=6;

elsex=7;

A)1B)2C)3D)6

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

main()

{inta=100,x=10,y=20,okl=5,ok2=0;

if(x<y)

if(y!=10)

if(!okl)

a=l;

else

if(ok2)a=10;

a=-l;

printf(,a);

}

A)1B)10C)-1D)值不確定

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

main()

{intx=2,y=-l,z=2;

if(x<y)

if(y<0)z=0;

elsez+=l:

printf("%d\n",z);

}

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

13.為了避免在嵌套的條件語句if-else中產(chǎn)生二義性,C語言規(guī)定:else子句總是與

()配對。

A)縮排位置相同的ifB)其之前最近的if

0其之后最近的ifD)同一行上的

14.若有條件表達式(exp)?a++:b-,則以下表達式中能完全等價于表達式(exp)的是

A)(exp==0)B)(cxp!=0)C)(exp==l)D)(exp!=l)

15.若運行時給變量x輸入12,則以下程序的運行結(jié)果是(

main()

{intx,y;

scanf("%d",&x);

y=x>12?x+10:x-12;

printf(w%d\nw,y);

}

A)0B)22C)12D)10

16.語句:printf(a=2)&&(b=-2));的輸出結(jié)果是()。

A)無輸出B)結(jié)果不確定0-1D)1

17.當(dāng)c的值不為0時,在下列選項中能正確將c的值賦給變量a、b的是(

A)c=b=a;B)(a=c)11(b=c);C)(a=c)&&(b=c);D)a=c=b;

18.能正確表示a和b同時為正或同時為負的表達式是()。

A)(a>=0||b>=0)&&(a<0||b<0)B)(a>=0&&b>=0)&&(a<0&&b<0)

C)(a+b>0)&&(a+b<=0)D)a*b>0

19.能正確表示邏輯關(guān)系:或aWO”的C語言表達式是(

A)a>=10ora<=0B)a>=0|a<=10

C)a>=10&&a<=0D)a>=10||a<=0

20.有如下程序段

inta=14,b=15,x:

charc='A';

x=(a&&b)&&(c<'B');

執(zhí)行該程序段后,X的值為()o

A)tureB)falseC)0D)1

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

A)-l1B)01010D)00

main()

{inta=-Lb=l,k;

if((++a<0)&&!(b—<=0))

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

else

printf(*%d%d\n*?b.a):

22.與y=(x〉O?l:x<O?-l:O);的功能相同的if語句是(

A)if(x>0)y=l;B)if(x)

elseif(x<0)y=-l;if(x>O)y=l;

elsey=0;elseif(x<0)y=-l

elsey=0;

0y=-lD)y=0;

if(x)if(x>=0)

if(x>O)y=l;if(x>O)y=l;

elseif(x==O)y=O;elsey=-l;

elsey=-l;

23.閱讀以下程序:

mainO

{intx;

scanf&x):

if(x—<5)printf

elseprintfx++);

)

程序運行后,如果從鍵盤上輸入5,則輸出結(jié)果是()。

05D)6

24.假定w、x、y、z、m均為int型變量,有如下程序段:

w=l;x=2;y=3;z=4;

m=(w<x)?w:x;m=(m<y)?m:y;m=(m<z)?m:z;

則該程序運行后,m的值是()o

A)4B)3C)2

25.有如下程序

main()

printf(,y);

}

該程序的輸出結(jié)果是()。

0.250000

26.有如下程序

main()

{inta=2,b=-1,c=2;

if(a)if(b<0)c=0;

elsec++;

printf(“%d\n",c);

}

該程序的輸出結(jié)果是()。

A)0C)2D)3

27.若有定義:floatw;inta,b;則合法的switch語句是()。

A)switch(w)Bswitch(x)

,2:printfC*\n*);

}無default語句

C)switch(b)D)switch(a+b);

{case1:printf;{case1:printfr*\n*);

default:printf(*\n*);case2:printfC**\n*);

case1+2:printf(***\n*);default:printf("\n");

28.若a、b、cisc2、x、y均是整型變量,正確的switch語句是(

A)swich(a+b);B)switch(a*a+b*b)

{casel:y=a+b;break;{case3:

case0:y=a-b;break:case1:y=a+b;break:

)case3:y=b-a;break;

)

C)switchaD)switch(a-b)

{casecl:y=a-b;break;{default:y=a*b;break;

casec2:x=a*d;break;case3:case4:x=a+b;break;

default:x=a+b;case10:case11:y=a-b;break;

})

29.有如下程序

main()

{intx=l,a=0,b=0:

switch(x)

{

case0:b++;

case1:a++;

case2:a++;b++;

)

printf(

溫馨提示

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

最新文檔

評論

0/150

提交評論