C語言題海題庫含答案_第1頁
C語言題海題庫含答案_第2頁
C語言題海題庫含答案_第3頁
C語言題海題庫含答案_第4頁
C語言題海題庫含答案_第5頁
已閱讀5頁,還剩212頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第一章 C語言概述一 單項選擇題1一個C程序的執(zhí)行是從( A )。A) 本程序的main函數(shù)開始,到main函數(shù)結(jié)束B) 本程序文件的第一個函數(shù)開始,到本程序文件的最后一個函數(shù)結(jié)束C) 本程序的main函數(shù)開始,到本程序文件的最后一個函數(shù)結(jié)束D) 本程序文件的第一個函數(shù)開始,到本程序的main函數(shù)結(jié)束2以下敘述正確的是( C )。A) 在C程序中,main函數(shù)必須位于程序的最前面B) C程序的每行中只能寫一條語句C) C語言本身沒有輸入輸出語句D) 在對一個C程序進行編譯的過程中,可發(fā)現(xiàn)注釋中的拼寫錯誤3以下敘述不正確的是( D )。A) 一個C源程序可由一個或多個函數(shù)組成B) 一個C源程序必

2、須包含一個main函數(shù)C) C程序的基本組成單位是函數(shù)D) 在C程序中,注釋說明只能位于一條語句的后面4C語言規(guī)定,在一個源程序中,main函數(shù)的位置( C )。A) 必須在最開始 B) 必須在系統(tǒng)調(diào)用的庫函數(shù)的后面C) 可以任意 D) 必須在最后5一個C語言源程序是由( B )。A) 一個主程序和若干子程序組成 B) 函數(shù)組成C) 若干過程組成 D) 若干子程序組成二 填空題1C源程序的基本單位是 函數(shù) 。2一個C源程序中至少應(yīng)包括一個 main函數(shù) 。3在一個C源程序中,注釋部分兩側(cè)的分界符分別為 /* 和 */ 。4一個函數(shù)是由兩部分組成的,它們分別是 函數(shù)名 和 函數(shù)體 。5在C語言中

3、,一個函數(shù)的函數(shù)體一般包括 聲明部分 和 執(zhí)行部分 。6在每個C語句和數(shù)據(jù)定義的最后必須有一個 分號 。7C語言本身沒有輸入輸出語句。其輸入輸出是由 系統(tǒng)定義的標(biāo)準(zhǔn)輸入輸出函數(shù) 來完成。8程序是指 (一系列可執(zhí)行)指令的集合 。9源程序是指 (未編譯的)源代碼 。C源程序文件的擴展名為 c 。10目標(biāo)程序是指 由源程序經(jīng)編譯后產(chǎn)生的可連接文件 。目標(biāo)程序文件的擴展名為 obj 。11可執(zhí)行程序是指 由目標(biāo)程序連接后產(chǎn)生的可執(zhí)行程序 。可執(zhí)行程序文件的擴展名為 exe 。12上機運行一個C源程序的步驟一般為: 寫(無錯的)源程序 ; (正確通過)編譯 ; 連接 ; 運行 。第三章 數(shù)據(jù)類型、運算

4、符與表達式一 單項選擇題1下面四個選項中,均不是c語言關(guān)鍵字的選項是( A )。A) defineIFType B) getccharprintfC) includescanfcaseD) whilegopow2C語言中的標(biāo)識符只能由字母、數(shù)字和下劃線三種字符組成,且第一個字符( C )。A) 必須為字母B) 必須為下劃線 C) 必須為字母或下劃線D) 可以是字母、數(shù)字和下劃線中任一種字符3下列四個選項中,均是C語言關(guān)鍵字的選項是( B )。A) auto enum includeB) switch typedef continueC) signed union scanfD) if stru

5、ct type4下面四個選項中,均是不合法的用戶標(biāo)識符的選項是( C )。A) A P_0 doB) float la0 _AC) b-a goto intD) _123 temp int 5以下有4組用戶標(biāo)識符,其中合法的一組是( C )。A) For -sub CaseB) 4d DO Size C) f2_G3 IF abc D) WORD void define6下列選項中,合法的C語言關(guān)鍵字是( D )。A) VARB) cherC) integerD) default7下面四個選項中,均是合法整型常量的選項是( A )。A) 160 -0 xffff 011B) -0 xcdf 0

6、1a 0 xeC) 01986 012 0668D) -0 x48a 2e5 0 xe8下面四個選項中,均是正確的八進制數(shù)或十六進制數(shù)的選項是( C )。A) -10 0 x8f -011B) 0abc -017 0 xcC) 010 -0 x11 0 xf1D) 0a12 -0 x123 -0 xa9設(shè)C語言中,一個int型數(shù)據(jù)在內(nèi)存中占2個字節(jié),則unsigned int型數(shù)據(jù)的取值范圍為( C )。A) 0255B) 032767C) 065535D) 0214748364710在C語言中,不正確的int類型的常數(shù)是( A )。A)32768B)0C)037D)0 xAF11下面四個選項

7、中,均是不合法的整型常量的選項是( D )。A) -0f1 -0 xffff 0011B) -0 xcdf 017 12456C) -018 999 5e2 D) -0 x48eg -068 03f12下面四個選項中,均是不合法的浮點數(shù)的選項是( B )。A) 160. 0.12 e3B) 123 2e4.2 .e5C) -.18 123e4 0.0D) -e3 .234 1e3 13下面四個選項中,均是合法的浮點數(shù)的選項是( B )。A) 1e1 5e-9.4 03e2B) -.60 12e-4 -8e5C) 123e 1.2e-.4 +2e-1 D) -e3 .8e-4 5.e-014下列

8、變量定義中合法的是( A )。A) short _a=1-.le-1;B) double b=1+5e2.5;C) long do=0 xfdaL;D) float 2_and=1-e-3;15 以下選項中合法的字符常量是( B )。A) “B”B) 010C) 68D) D16以下選項中,非法的字符常量是( C )。A) tB) 17C) nD) xaa17以下所列的C語言常量中,錯誤的是( B )。A) 0 xFFB) 1.2e0.5C) 2LD) 7218在C語言中,char型數(shù)據(jù)在內(nèi)存中的存儲形式是( D )。A) 補碼B) 反碼C) 原碼D) ASCII碼19下面四個選項中,均是合法

9、轉(zhuǎn)義字符的選項是( A )。A) n B) 017 ”C) 018 f xabD) 0 101 xlf20下面四個選項中,均是不合法的轉(zhuǎn)義字符的選項是( 0 )。A) ” xfB) 1011 aC) 011 f D) abc 101 xlf/上題中,紅色部分 表示 合法的轉(zhuǎn)義字符。21下面正確的字符常量是( C )。A) “c”B) C) WD) 22下面四個選項中,均是正確的數(shù)值常量或字符常量的選項是( X )。A) 0.0 0f 8.9e &B) a 3.9e-2.5 1e1 C) 3 011 0 xff00 0aD) +001 0 xabcd 2e2 50.23下面不正確的字符串常量是(

10、 A )A) abcB) ”1212”C) ”0”D) ” ”24在C語言中(以16位PC機為例),5種基本數(shù)據(jù)類型的存儲空間長度的排列順序為( A )。A) charintlong int=floatdoubleB) char=intlong int=floatdoubleC) charintlong int=float=doubleD) char=int=long int=floatdouble25若有說明語句:char c=72;則變量c( A )。A) 包含1個字符B) 包含2個字符C) 包含3個字符D) 說明不合法,c的值不確定26設(shè)變量a是整型,f是實型,i是雙精度型,則表達式10

11、+a+i*f值的數(shù)據(jù)類型為( C )。A) intB) floatC) doubleD) 不確定27表達式18/4*sqrt(4.0)/8值的數(shù)據(jù)類型為( C )。A) intB) floatC) doubleD) 不確定28設(shè)有說明:charw; intx; floaty; doublez; 則表達式w*x+z-y值的數(shù)據(jù)類型為( D )。A) floatB) charC) intD) double29以下選項中屬于C語言的數(shù)據(jù)類型是( C )。A) 復(fù)數(shù)型B) 邏輯型C) 雙精度型D) 集合型30以下程序的輸出結(jié)果是( A )。main() char c=z; printf(“%c”,c-

12、25);A) aB) ZC) z-25D) y31若有定義:inta=7; floatx=2.5,y=4.7; 則表達式x+a%3*(int)(x+y)%2/4的值是( A )。A) 2.500000B) 2.750000C) 3.500000D) 0.00000032若有代數(shù)式3ae/bc,則不正確的c語言表達式是( C )。A) a/b/c*e*3B) 3*a*e/b/cC) 3*a*e/b*cD) a*e/c/b*333設(shè)有 intx=11; 則表達式 (x+ * 1/3) 的值是( A )。A) 3B) 4C) 11D) 1234以下變量x.、y、z均為double類型且已正確賦值,不

13、能正確表示數(shù)學(xué)式子x/yz的C語言表達式是( A )。A) x/y*zB) x*(1/(y*z)C) x/y*1/zD) x/y/z35C語言中運算對象必須是整型的運算符是( A )。A) %=B) /C) =D) =36下列程序的輸出結(jié)果是( C )。main() double d=3.2; int x,y; x=1.2; y=(x+3.8)/5.0; printf(%dn, d*y);A) 3B) 3.2C) 0D) 3.0737若x,i,j和k都是int型變量,則計算下面表達式x=(i=4, j=16, k=32) 后,x的值為( C )。A) 4B) 16C) 32D) 5238假設(shè)所

14、有變量均為整型,則表達式(a=2, b=5, b+, a+b)的值是( B )。A) 7B) 8C) 6D) 239假定x和y為double型,則表達式x=2, y=x+3/2的值是( D )。A) 3.500000B) 3C) 2.000000D) 3.00000040若以下變量均是整型,且num=sum=7;則計算表達式sum=num+, sum+, +num后sum的值為( B )。A) 7B) 8C) 9D) 1041若有定義int k=7,x=12; ,則以下能使值為3的表達式是( D )。A) x%=(k%=5) B) x%=(k-k%5)C) x%=k-k%5D) (x%=k)-

15、(k%=5)42設(shè)以下變量均為int類型,則值不等于7的表達式是( C )。A) (x=y=6,x+y,x+1) B) (x=y=6,x+y,y+1)C) (x=6,x+1,y=6,x+y) D) (y=6,y+1,x=y,x+1)43下列程序執(zhí)行后的輸出結(jié)果是( A )。main() int x=f; printf(“%cn”,A+(x-a+1);A) GB) HC) ID) J44下列程序執(zhí)行后的輸出結(jié)果是( C )。main() char x=0 xFFFF; printf(%d n,x-); A) 32767B) FFFEC) -1D) 3276845以下程序的輸出結(jié)果是( D )。m

16、ain() int a=3; printf(%dn,(a+=a-=a*a);A) -6B) 12C) 0D) 1246若變量已正確定義并賦值,下面符合C語言語法的表達式是( B )。A) a:=b+1B) a=b=c+2C) int 18.5%3D) a=a+7=c+b47若有以下程序段, int c1=1, c2=2, c3; c3=1.0/c2*c1;則執(zhí)行后,c3中的值是( A )。A) 0B) 0.5C) 1D) 2 48有如下程序 main( ) int y=3, x=3, z=1; printf(“%d %dn”, (+x, y+), z+2); 運行該程序的輸出結(jié)果是( D )。

17、 A) 3 4B) 4 2C) 4 3D) 3 3 49已知大寫字母A的ASCII碼為65,以下程序的運行結(jié)果為( A )。#includemain( ) char c1=A,c2=Y; printf(“%d,%dn”,c1,c2);A) 65,89B) A,YC) 65,88D) 65,9050以下程序的輸出結(jié)果是( D )。#includemain() int a=010,b=10; printf(“%d,%dn”,a+,-b);A) 10,10B) 8,10C) 10,9D) 8,951以下程序的輸出結(jié)果是( B )。main() int a,b; a=100;b=200; printf

18、(“%dn”,(a,b);A) 100B) 200C) 20000D) 100=20052執(zhí)行語句 y=10;x=y+; 的結(jié)果是( C )。A) x=10,y=10B) x=11,y=11C) x=10,y=11D) x=11,y=1053在表示C語言的整型變量時,表示“無符號長整型”的符號是( D )。A) unsigned intB) unsigned shortC) long intD) unsigned long54在下列形式的常數(shù)中,C程序不允許出現(xiàn)的是( B )。A) .45B) 123C) 25.6e-2D) 4e355以下程序的輸出結(jié)果是( C )。main() float

19、x=3.6; int i; i=(int)x; printf(“x=%f,i=%d”,x,i);A) x=3.600000,i=4B) x=3,i=3C) x=3.600000,i=3D) x=3.000000,i=3.60000056在C語言中,要求運算數(shù)必須是整型數(shù)據(jù)的運算符是( B )。A) /B) %C) !D) 57執(zhí)行下列語句的結(jié)果是( D )。i=3;printf(“%d,”,+i);printf(“%d”,i+);A) 3,3B) 3,4C) 4,3D) 4,458已知x=3, y=2,則表達式x*=y+8的值為( C )。A) 3B) 2C) 30D) 1459執(zhí)行語句int

20、 i=65536; printf(“%dn”,i); 的結(jié)果是( B )。A) 65536B) 0C) 有語法錯誤,無輸出結(jié)果D) 160在C語言中,不正確的int類型的常數(shù)是( A )。A) 32768B) 0C) 037D) 0 xAF61C語言提供的合法關(guān)鍵字是( D )。A) swicthB) chanC) CaseD) default62表示“在使用x之前,先使x的值加1”的正確方式是(A A )。A) +xB) x+C) +xD) +x+63設(shè)x的值為5,則表達式(+x)+(+x)+(+x)的值是( 22 D )。A) 24B) 20C) 15D) 2164在C語言中,合法的字符常

21、量是( B )。A) 084 B) x43 C) ab D) “0”65若已定義x和y為double類型,則表達式:x=1, y=x+3/2的值是( C )。A) 1B) 2C) 2.0D) 2.666若t為double類型,表達式t=1, t+5, t+的值是( D )。A) 1B) 6.0C) 2.0D) 1.067若有以下定義和語句,則輸出結(jié)果是( B )。char c1=b,c2=e;printf(“%d,%cn”,c2-c1,c2-a+A);A) 2,MB) 3,EC) 2,ED) 輸出項與對應(yīng)的格式控制不一致,輸出結(jié)果不確定68設(shè)有如下的變量定義:int i=8,a,b;doubl

22、e x=1.42,y=5.2;則以下符合C語言語法的表達式是( A )。A) a+=a-=(b=4)*(a=3)B) x%(-3)C) a=a*3=2D) y=float(i)69若有以下定義和語句:int u=010,v=0 x10,w=10;printf(“%d,%d,%dn”,u,v,w);則輸出結(jié)果是( A )。A) 8,16,10B) 10,10,10C) 8,8,10D) 8,10,10二 填空題1若x和a均是int型變量,則計算表達式(1)后的x值為 12 ,計算表達式(2)后的x值為 4 。(1) x=(a=4, 6*2)(2) x=a=4, 6*22若a是int型變量,則表達

23、式(a=4*5, a*2), a+6的值為 26 。3若b是int型變量,則表達式b=25/3%3的值為 2 。4若s是int型變量,且s=6 則下面表達式s%2+(s+1)%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的值為 10 ,n的值為 6 。7若有定義:int b=7;float a=2.5,c=4.7;則表達式a+(int)(b/3*(int)(a+c)/2)%4的值為 4.5 。8若有定義:int a=2,b=3;fl

24、oat x=3.5,y=2.5;則表達式(float)(a+b)/2+(int)x%(int)y的值為 3.5 。9若有定義:int x=3,y=2;float a=2.5,b=3.5;則表達式(x+y)%2+(int)a/(int)b的值為 1 。10若x和n均是整型變量,且x的初值為12,n的初值為5,則計算表達式x%=(n%=2)后x的值為 0 。11以下程序的輸出結(jié)果是 0 。main() unsigned short a=65536; int b; printf(“%dn”,b=a);12請寫出數(shù)學(xué)式a/bc的C語言表達式 a/(b*c) 。13設(shè)a、b、c為整型數(shù),且a=2、b=3

25、、c=4,則執(zhí)行完語句 a*=16+(b+)-(+c)后,a的值是 28 。第四章 最簡單的C程序設(shè)計順序程序設(shè)計一 單項選擇題 15 BDDDB1printf函數(shù)中用到格式符%5s,其中數(shù)字5表示輸出的字符串占用5列,如果字符串長度大于5,則輸出按方式( B )。A) 從左起輸出該字符串,右補空格B) 按原字符長從左向右全部輸出C) 右對齊輸出該字串,左補空格D) 輸出錯誤信息2已有定義int a= -2; 和輸出語句 printf(“%8x”,a); 以下正確的敘述是( D )。A) 整型變量的輸出形式只有%d一種B) %x是格式符的一種,它可以適用于任何一種類型的數(shù)據(jù)C) %x是格式符的

26、一種,其變量的值按十六進制輸出,但%8x是錯誤的D) %8x不是錯誤的格式符,其中數(shù)字8規(guī)定了輸出字段的寬度3若x, y均定義成int型,z定義為double型,以下不合法的scanf函數(shù)調(diào)用語句是( D )。A) scanf(“%d %x, %le”, &x, &y, &z);B) scanf(“%2d *%d, %lf”, &x, &y, &z);C) scanf(“%x %*d %o”, &x, &y);D) scanf(“%x %o%6.2f”, &x, &y, &z);4以下程序的輸出結(jié)果是( D )。main( ) int k=17; printf(%d,%o,%xn,k,k,k)

27、;A)17,021,0 x11B)17,17,17B)17,0 x11,021D)17,21,115下列程序的運行結(jié)果是( B )。#include main() int a=2,c=5; printf(a=%d,b=%dn,a,c);A) a=%2,b=%5B) a=2,b=5C) a=d,b=dD) a=2,c=56語句printf(abrehiyboun); 的輸出結(jié)果是( C )。(說明: b是退格符)A) abrehiybouB) abrehiybouC) rehiyou D) abrehiybou7x、y、z被定義為int型變量,若從鍵盤給x、y、z輸入數(shù)據(jù),正確的輸入語句是( B

28、 )。A) INPUT x、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 %f ,&a,&b,&c); 給a賦于10.0,b賦予22.0,c賦予33.0,不正確的輸入形式是( B ):A) 10B) 10.0,22.0,33.0 22 33C) 10.0D) 10 22 22.0 33.0 339以下程序的輸出結(jié)果是( A、 n=24 )。main() int n; (n=6*4,n+6),n*2; printf

29、(“n=%dn”,n);A) 24B) 12C) 26D) 2010以下程序的輸出結(jié)果是( B )。main() int x=2,y,z; x*=3+1; printf(“%d,”,x+); x+=y=z=5; printf(“%d,”,x); x=y=z; printf(“%dn”,x);A) 8,14,1B) 8,14,5C) 8,13,5D)9,14,511下面程序的輸出結(jié)果是( C )。main() int x, y, z; x=0;y=z=-1; x+=-z-y; printf(“x=%dn”,x);A) x=4B) x=0C) x=2D) x=312設(shè)x為int型變量,則執(zhí)行語句x

30、=10; x+=x-=x-x; 后,x的值為( B )。A) 10B) 20C) 40D) 3013只能向終端輸出一個字符的函數(shù)是( B )。A) printf函數(shù) B) putchar函數(shù)C) getchar函數(shù)D) scanf函數(shù)14下列程序執(zhí)行后的輸出結(jié)果是(小數(shù)點后只寫一位)( A )。main() double d; float f; long l; int i; i=f=1=d=20/3; printf(%d %ld %f %f n, i,l,f,d);A) 6 6 6.0 6.0B) 6 6 6.7 6.7C) 6 6 6.0 6.7D) 6 6 6.7 6.015在下列敘述中,

31、錯誤的一條是( C )。A) printf函數(shù)可以向終端輸出若干個任意類型的數(shù)據(jù)B) putchar函數(shù)只能向終端輸出字符,而且只能是一個字符C) getchar函數(shù)只能用來輸入字符,但字符的個數(shù)不限D(zhuǎn)) scanf函數(shù)可以用來輸入任何類型的多個數(shù)據(jù)16以下程序的輸出結(jié)果為( B )。main() char c1=a,c2=b,c3=c; printf(“a%cb%ctc%cn”,c1,c2,c3);A) abc abc abcB) aabb ccC) a b cD) aaaa bb17若輸入12345和abc,以下程序的輸出結(jié)果是( C )。main() int a; char ch; sc

32、anf(“%3d%3c”,&a,&ch); printf(“%d, %c” ,a, ch);A) 123, abcB) 123,4C) 123,aD) 12345,abc18以下程序的輸出結(jié)果是( D )。main() unsigned x1; int b= -1; x1=b; printf(“%u”,x1);A) %uB) -1C) %u-1D) 6553519在printf函數(shù)中用來輸出十六進制無符號整數(shù)的格式字符是( B )。A) d格式符B) x格式符C) u格式符D) o格式符20設(shè)a=12、b=12345,執(zhí)行語句printf(“%4d,%4d”,a,b)的輸出結(jié)果為( B )。A

33、) 12, 123B) 12,12345C) 12, 1234D) 12, 12345621以下程序的輸出結(jié)果是( C )。#include#includemain() int a=1,b=4,c=2; float x=10.5, y=4.0, z; z=(a+b)/c+sqrt(double)y)*1.2/c+x; printf(“%fn”, z);A) 14.000000B) 15.400000C) 13.700000D) 14.90000022以下程序的輸出結(jié)果是( D )。main() int a=2, c=5; printf(“a=%d, b=%dn”, a, c);A) a=%2,

34、 b=%5 B) a=%2, c=%5C) a=%d, b=%dD) a=%d, b=%d23請讀程序:main() int a; float b, c; scanf(“%2d%3f%4f”,&a,&b,&c); printf(“na=%d, b=%f, c=%fn”, a, b, c);若運行時從鍵盤上輸入9876543210(表示回車),則上面程序的輸出結(jié)果是( C )。A) a=98, b=765, c=4321 B) a=10, b=432, c=8765 C) a=98, b=765.000000, c=4321.000000D) a=98, b=765.0, c=4321.024若

35、有定義:int x, y; char a, b, c; 并有以下輸入數(shù)據(jù)(此處代表回車,代表空格):12ABC則能給x賦整數(shù)1,給y賦整數(shù)2,給a賦字符A,給b賦字符B,給c賦字符C的正確程序段是( D )。A) scanf(“x=%d, y=%d”, &x, &y); a=getchar( ); b=getchar( ); c=getchar( );B) scanf(“%d %d”, &x, &y); a=getchar( ); b=getchar( ); c=getchar( );C) scanf(“%d%d%c%c%c”, &x, &y, &a, &b, &c);D) scanf(“%d

36、%d%c%c%c%c%c%c”, &x, &y, &a, &a, &b, &b, &c, &c);25下列可作為C語言賦值語句的是( C )。A) x=3, y=5; B) a=b=6C) i-;D) y=int(x);26設(shè)i是int型變量,f是float型變量,用下面的語句給這兩個變量輸入值: scanf(“i=%d, f=%f”, &i, &f);為了把100和765.12分別賦給i和f,則正確的輸入為( B )。A) 100765.12B) i=100, f=765.12 C) 100765.12D) x=100y=765.1227以下敘述中正確的是( D )。A) 輸入項可以是一個實

37、型常量,例如:scanf(“%f”, 3.5);B) 只有格式控制,沒有輸入項,也能正確輸入數(shù)據(jù)到內(nèi)存,例如:scanf(“a=%d, b=%d”);C) 當(dāng)輸入一個實型數(shù)據(jù)時,格式控制部分可以規(guī)定小數(shù)點后的位數(shù),例如:scanf(“%4.2f”, &f);D) 當(dāng)輸入數(shù)據(jù)時,必須指明變量地址,例如:scanf(“%f”, &f);28設(shè)x和y均為int型變量,則以下語句:x+=y; y=x-y; x-=y; 的功能是( D )。A) 把x和y按從小到大排序B) 把x和y按從大到小排序 C) 無確定結(jié)果D) 交換x和y中的值二 填空題1下面程序的運行結(jié)果是i:dec=4,oct=4,hex=4

38、,unsigned=65531。main() short i; i= -4; printf(“ni: dec=%d, oct=%o, hex=%x, unsigned=%un”, i, i, i, i);2若想通過以下輸入語句使a=5.0,b=4,c=3,則輸入數(shù)據(jù)的形式應(yīng)該是 5.0,4,c=3 。int b,c; float a;scanf(%f,%d,c=%d,&a,&b,&c);3下列程序的輸出結(jié)果是16.00,請?zhí)羁?。main() int a=9, b=2;float x= 6.6 , y=1.1,z;z=a/2+b*x/y+1/2;printf(%5.2fn, z );4在prin

39、tf格式字符中,只能輸出一個字符的格式字符是 c ;用于輸出字符串的格式字符是 s ;以小數(shù)形式輸出實數(shù)的格式字符是 f ;以標(biāo)準(zhǔn)指數(shù)形式輸出實數(shù)的格式字符是 e 。三 編程題1. 若a=3, b=4, c=5, x=1.2, y=2.4, z= -3.6, u=51274, n=128765, c1=a, c2=b。想得到以下的輸出格式和結(jié)果,請寫出完整的程序(包括定義變量類型和設(shè)計輸出)。要求輸出的結(jié)果如下:a= 3 b= 4 c= 5 x=1.200000, y=2.400000, z= -3.600000 x+y=3.60 y+z = -1.20z+x= -2.40u=51274n=1

40、28756c1= a or97(ASCII)c2= B or98(ASCII)/*void main()int a, b, c;unsigned u;,long int n;float x, y, z;char c1,c2;a=3, b=4, c=5, x=1.2, y=2.4, z= -3.6, u=51274, n=128765, c1=a, c2=b;printf(a=%2d b=%2d c=%2dn, a, b, c);printf(x=%f, y=%f, z=%+fn);printf(x+y=%5.2f y+z =%+5.2f z+x=%+5.2fn, x+y, y+z, z+x);

41、printf(u=%6d n=%9dn);printf(c1=%c or %d(ASCII)n, c1, c1);printf(c2=%c or %d(ASCII)n, c2-32, c2);*/2. 輸入一個華氏溫度,要求輸出攝氏溫度。公式為 輸出要有文字說明,取2位小數(shù)。/*void main()float c, f;printf(輸入一個華氏溫度:n);scanf(%f, &f);c = 5.0/9.0*(f-32);printf(n輸入的華氏溫度 %.2f,攝氏溫度為: %.2fn, f, c);*/3. 編程序,用getchar函數(shù)讀入兩個字符給c1、c2,然后分別用putchar函

42、數(shù)和printf函數(shù)輸出這兩個字符。/*void main()char c1, c2;c1 = getchar();c2 = getchar();putchar(c1);putchar(c2);printf(nc1 = %c; c2 = %cn, c1, c2);*/第五章 選擇結(jié)構(gòu)程序設(shè)計一 單項選擇題1邏輯運算符兩側(cè)運算對象的數(shù)據(jù)類型是( D )。A) 只能是0或1B) 只能是0或非0正數(shù)C) 只能是整型或字符型數(shù)據(jù)D) 可以是任何類型的數(shù)據(jù)2已知x=43, ch=A, y=0;則表達式(x=y&chy) z=x;x=y;y=z;A) x=10,y=20,z=30B) x=20,y=30,

43、z=30C) x=20,y=30,z=10D) x=20,y=30,z=20 4執(zhí)行下列語句后a的值為( 2 ),b的值為( 1 )。( C )int a, b, c;a=b=c=1;+a| +b & +c;A) 錯誤 1B) 2 2C) 2 1D) 1 15若希望當(dāng)A的值為奇數(shù)時,表達式的值為“真”,A的值為偶數(shù)時,表達式的值為“假”,則以下不能滿足要求的表達式是( C )。A) A%2=1B) !(A%2=0)C) !(A%2)D) A%26設(shè)有:int a=1,b=2,c=3,d=4,m=2,n=2; 執(zhí)行(m=ab)&(n=cd)后n的值是( B )。A) 0B) 2C) 3D) 4

44、7判斷char型變量cl是否為小寫字母的正確表達式是( D )。A) a=cl=a)&(cl=cl)|(z=a)&(cly&x!=y);B) if(x=y) x+=y;C) if(x!=y) scanf(“%d”,&x) else scanf(“%d”,&y)D) if(xy) x+;y+;9請閱讀以下程序:main() int a=5,b=0,c=0; if(a=b+c) printf(“*n”); else printf(“$n”);以上程序( D )。A) 有語法錯不能通過編譯B) 可以通過編譯但不能通過連接C) 輸出*D) 輸出$10當(dāng)a=1,b=3,c=5,d=4時,執(zhí)行完下面一段程

45、序后x的值是( B )。if(ab)if(cd) x=1;else if(ac) if(bd) x=2; else x=3; else x=6;else x=7;A) 1B) 2C) 3D) 611以下程序的輸出結(jié)果是( C )。main()int a=100,x=10,y=20,ok1=5,ok2=0; if(xy) if(y!=10) if(!ok1) a=1; else if(ok2) a=10; a=-1; printf(“%dn”,a);A) 1B) 10C) -1D) 值不確定12以下程序的輸出結(jié)果是( B )。main()int x=2,y=-1,z=2; if(xy) if(y

46、12?x+10:x-12; printf(“%dn”,y); A) 0B) 22C) 12D) 1016語句:printf(%d,(a=2)&(b= -2);的輸出結(jié)果是( D )。A) 無輸出B) 結(jié)果不確定C) -1D) 117當(dāng)c的值不為0時,在下列選項中能正確將c的值賦給變量a、b的是( C )。A) c=b=a;B) (a=c)|(b=c);C) (a=c)&(b=c);D) a=c=b;18能正確表示a和b同時為正或同時為負(fù)的表達式是( D )。A) (a=0|b=0)&(a0|b=0&b=0)&(a0&b0)&(a+b019能正確表示邏輯關(guān)系:“a10或a0”的C語言表達式是(

47、C )。A) a=10 or a=0|a=10&a=10|a=020有如下程序段int a=14,b=15,x;char c=A;x=(a&b)&(cB);執(zhí)行該程序段后,x的值為( D )。A) tureB) falseC) 0D) 121以下程序的輸出結(jié)果是( C )。A)-1 1B)0 1C)1 0D)0 0main( ) int a=-1,b=1,k; if(+a0)&!(b-0?1:x0) y=1;B) if(x) else if(x0)y=1; else y=0; else if(x=0) if(x0)y=1; if(x0)y=1; else if(x=0)y=0; else y=

48、-1; else y=-1;23閱讀以下程序:main()int x; scanf(%d, &x); if(x-5) printf(%d, x); else printf(%d, x+);程序運行后,如果從鍵盤上輸人5,則輸出結(jié)果是( B )。A)3B) 4C) 5D) 624假定w、x、y、z、m均為int型變量,有如下程序段:w=1; x=2; y=3; z=4;m=(wx)?w:x; m=(my)?m:y; m=(mz)?m:z;則該程序運行后,m的值是( D )。A) 4B) 3C) 2D) 125有如下程序 main( ) float x=2.0,y; if(x0.0) y=0.0;

49、 else if(x10.0) y=1.0/x; else y=1.0; printf(“%fn”,y); 該程序的輸出結(jié)果是( C )。A) 0.000000B) 0.250000C) 0.500000D) 1.00000026有如下程序 main( ) int a=2,b=-1,c=2; if(a)if(b0) c=0; else c+; printf(“%dn”,c); 該程序的輸出結(jié)果是( A )。A) 0B) 1C) 2D) 327若有定義: float w; int a, b; 則合法的switch語句是( D )。A) switch(w)B switch(x) case 1.0:

50、 printf(*n); case 1,2: printf(*n); case 2.0: printf(*n); case 3: printf(*n); C) switch(b)D) switch(a+b); case 1: printf(*n); case 1: printf(*n); default: printf(n); case 2: printf(*n); case 1+2: printf(*n); default: printf(n); 28若a、b、c1、c2、x、y均是整型變量,正確的switch語句是( D )。A) swich(a+b);B) switch(a*a+b*b)

51、 case 1:y=a+b; break; case 3: case 0:y=a-b; break; case 1:y=a+b;break; case 3:y=b-a;break; C) switch aD) switch(a-b) case c1 :y=a-b; break; default:y=a*b;break; case c2: x=a*d; break; case 3:case 4:x=a+b;break; default:x=a+b; case 10:case 11:y=a-b;break; 29有如下程序 main( )int x=1,a=0,b=0; switch(x) cas

52、e 0: b+; case 1: a+; case 2: a+;b+; printf(“a=%d,b=%dn”,a,b); 該程序的輸出結(jié)果是( A )。A) a=2,b=1B) a=1,b=1C) a=1,b=0D) a=2,b=230當(dāng)輸入19、2、21時,以下程序的輸出結(jié)果是( A )。main( )int a,b,c,max; printf(“please input three numbers a,b,c:n”); scanf(“%d,%d,%d”,&a,&b,&c); max=a; if(maxb) max=b; if(max=85.”); case B: case C:print

53、f(“=60.”); case D:printf(“=85. B) =60. C) =60.x -10&1xy -10&1y1+2&2|2*44-!0后,x的值為( C )。A) 1B) 0C) 1D) 534以下程序的輸出結(jié)果為( C )。main( )int a,b,c,x,y,z; a=10;b=2; c=!(a%b); x=!(a/b); y=(a=0); z=(a=0); printf(“c=%d, x=%d, y=%d, z=%dn”, c, x, y, z); A) c=0,x=1,y=1,z=0B) c=5,x=0,y=1,z=0C) c=1,x=0,y=0,z=1D) c=1

54、0,x=2,y=0,z=135下列運算符中,不屬于關(guān)系運算符的是( D )。A) =C) =D) !36以下程序的輸出結(jié)果是( B )。main( )int a,b,d=241; a=d/100%9; b=(-1)&(-1); printf(“%d, %dn”, a, b); A) 6,1B) 2,1C) 6,0D) 2,037設(shè)ch是char型變量,其值為A,且有下面的表達式: ch=(ch=A&ch=Z)?(ch+32):ch上面表達式的值是( B )。A) AB) aC) ZD) z38若k是int型變量,且有下面的程序片段:k= -3;if(k=0) printf(“#”)else p

55、rintf(“&”)上面程序片段的輸出結(jié)果是( D )。A) #B) &C) #&D) 有語法錯誤,無輸出結(jié)果39請讀程序:main() float x, y; scanf(“%f”, &x); if(x0.0) y=0.0; else if(x5.0)&(x!=2.0) y=1.0/(x+2.0); else if(x10.0) y=1.0/x; else y=10.0; printf(“%fn”,y);若運行時從鍵盤上輸入2.0(表示回車),則上面程序的輸出結(jié)果是( C )。A) 0.000000B) 0.250000C) 0.500000D) 1.00000040請讀程序:main()

56、int x=1, y=0, a=0, b=0; switch(x) case 1:switch(y) case 0:a+;break; case 1:b+;break; case 2:a+; b+; break; printf(“a=%d, b=%dn”, a, b);上面程序的輸出結(jié)果是( A )。A) a=2,b=1B) a=1,b=1C) a=1,b=0D) a=2,b=241為表示關(guān)系xyz,應(yīng)使用C語言表達式( A )。A) (x=y)&(y=z)B) (x=y)AND(y=z)C) (x=y=z) D) (x=y)|(y=z)42若要求在if后一對圓括號中表示a不等于0的關(guān)系,則能

57、正確表示這一關(guān)系的表達式為( D )。A) a0B) !aC) a=0D) a43兩次運行下面的程序,如果從鍵盤上分別輸入6和4,則輸出結(jié)果是( A )。main() int x; scanf(“%d”, &x); if(x+5) printf(“%d”, x); else printf(“%dn”, x-);A) 7和5B) 6和3C) 7和4D) 6和444以下程序的輸出結(jié)果是( D )。main() int a= -1, b=4, k; k=(+a0)&!(b-=0); printf(“%d%d%dn”, k, a, b);A) 104B) 103C) 003D) 00445設(shè)a為整型變

58、量,不能正確表達數(shù)學(xué)關(guān)系10a15的C語言表達式是( A )。A) 10a10&a15D) !(a=15)46假定所有變量均已正確說明,下列程序段運行后x的值是( B )。 a=b=c=0;x=35;if(!a) x-;else if(b) ; if(c) x=3;else x=4;A) 34B) 4C) 35D) 347設(shè)a=1, b=2, c=3, d=4,則表達式ad?a:d的結(jié)果是( D )。A) 4B) 3C) 2D) 148當(dāng)a=1, b=3, c=5, d=4時,執(zhí)行下面一段程序后,x的值為( B )。if(ab) if(cb) x=1; else if(ac) if(b0) s

59、=s+1; if(ab) t=s+t; else if(a=b) t=5; else t=2*s; printf(“t=%dn”, t);A) abB) ab0C) 0aab50設(shè)int x=1, y=1;表達式(!x|y-)的值是( B )。A) 0B) 1C) 2D) 151若變量a、i已正確定義,且i已正確賦值,合法的語句是( B )。A) a=1B) +i; C) a=a+=5; D) a=int(i);52以下程序的輸出結(jié)果為( C )。main() int a=2, b=-1, c=2; if(ab) if(b50) printf(“%d”,a);if(a40) printf(“%

60、d”,a);if(a30) printf(“%d”,a);2下面程序的運行結(jié)果是 -1 。main() int a=2, b=3, c; c=a; if(ab) c=1; else if(a=b) c=0; else c=-1; printf(“%dn”,c);3以下程序?qū)崿F(xiàn):輸入三個整數(shù),按從大到小的順序進行輸出。請?zhí)羁?。main() int x, y, z, c; scanf(“%d %d %d”, &x, &y, &z); if( xy ) c=x; x=y; y=c; if( xz ) c=x; x=z; z=c; if( y=A& ch=a& ch5 | xb) t=a; a=b ;

溫馨提示

  • 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)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論