二級(jí)C語(yǔ)言上機(jī)與資料簡(jiǎn)介_第1頁(yè)
二級(jí)C語(yǔ)言上機(jī)與資料簡(jiǎn)介_第2頁(yè)
二級(jí)C語(yǔ)言上機(jī)與資料簡(jiǎn)介_第3頁(yè)
二級(jí)C語(yǔ)言上機(jī)與資料簡(jiǎn)介_第4頁(yè)
二級(jí)C語(yǔ)言上機(jī)與資料簡(jiǎn)介_第5頁(yè)
已閱讀5頁(yè),還剩14頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、上機(jī)改錯(cuò)1.請(qǐng)指出以下C程序的錯(cuò)誤所在:#include sudio.h;main(); /*main function*/float f,s; /*/* r is radius */,/* s is area of circulat */*/r=5.0;s=3.14159*r*r;printf(“%fn”,s)2. 請(qǐng)指出以下C程序的錯(cuò)誤所在:main /*main function*/float a,b,c,v; /* a,b,c are sides,v is volume of cube*/a=2.0 ; b=3.0;c=4.0v=a*b*c;printf(“%fn”,v)3.以下程序多

2、處有錯(cuò)。若指定必須按下面的形式輸入數(shù)據(jù),并且必須按下面指定的形式輸出數(shù)據(jù),請(qǐng)對(duì)該程序做相應(yīng)的修改。main double a,b,c,s,v;printf(input a,b,c:n);scanf(“%d %d %d”,a,b,c);s=a*b; /*計(jì)算長(zhǎng)方形面積*/v=a*b*c; /*計(jì)算長(zhǎng)方體體積*/printf(“%d %d %d”, a,b,c);printf(“s=%fn”,s,”v=%dn”,v);當(dāng)程序執(zhí)行時(shí),屏幕的顯示和要求輸入形式如下:input a,b,c:2.0 2.0 3.0 此處的2.0 2.0 3.0 是用戶輸入的數(shù)據(jù)a=2.000000,b=2.000000,

3、c=3.000000 此處是要求的輸出形式s=4.000000,v=12.000000第 1 章 C語(yǔ)言程序設(shè)計(jì)概述一、選擇題1、以下敘述中正確的是A)C語(yǔ)言比其他語(yǔ)言高級(jí)B)C語(yǔ)言可以不用編譯就能被計(jì)算機(jī)識(shí)別執(zhí)行C)C語(yǔ)言以接近英語(yǔ)國(guó)家的自然語(yǔ)言和數(shù)學(xué)語(yǔ)言作為語(yǔ)言的表達(dá)形式 D)C語(yǔ)言出現(xiàn)的最晚,具有其他語(yǔ)言的一切優(yōu)點(diǎn)2、以下說法正確的是A)C語(yǔ)言程序總是從第一個(gè)的函數(shù)開始執(zhí)行B)在C語(yǔ)言程序中,要調(diào)用函數(shù)必須在main()函數(shù)中定義C)C語(yǔ)言程序總是從main()函數(shù)開始執(zhí)行D)C語(yǔ)言程序中的main()函數(shù)必須放在程序的開始部分3、C語(yǔ)言規(guī)定,在一個(gè)源程序中,main函數(shù)的位置A)必須在

4、最開始B)必須在系統(tǒng)調(diào)用的庫(kù)函數(shù)的后面C)可以任意D)必須在最后4、以下敘述不正確的是A)一個(gè)C源程序可由一個(gè)或多個(gè)函數(shù)組成B)一個(gè)C源程序必須包含一個(gè)main函數(shù)C)C程序的基本組成單位是函數(shù)D)在C程序中,注釋說明只能位于一條語(yǔ)句的后面5、C語(yǔ)言程序的基本單位是A)程序行B)語(yǔ)句C)函數(shù)D)字符6、以下敘述正確的是A)在C程序中,每行中只能寫一條語(yǔ)句B)若a是實(shí)型變量,C程序中允許賦值a=10,因此實(shí)型變量中允許存放整型數(shù)C)在C程序中,無論是整數(shù)還是實(shí)數(shù),都能被準(zhǔn)確無誤地表示D)在C程序中,%是只能用于整數(shù)運(yùn)算的運(yùn)算符B)main() int x,y,z;x=0,y=x+1;z=x+y;

5、B)main() int x,y,z;x=0,y=x+1;z=x+y;A)main() int x,y,z;x=0;y=x-1;z=x+y;D)main() int x,y,z;x=0;y=x+1;D)main() int x,y,z;x=0;y=x+1;z=x+y, int x;intint y;x=0,y=x+1;z=x+y;8、以下4個(gè)選項(xiàng)中,不能看做一條語(yǔ)句的是A);B)a=5,b=2.5,c=3.6;C)if(a12?x+10:x-12;printf(%dn,y); A)0B)22C)12D)1020、在C語(yǔ)言中,運(yùn)算對(duì)象必須是整型數(shù)的運(yùn)算符是A)%B)C)%和D)*21、C語(yǔ)言中運(yùn)

6、算對(duì)象必須是整型的運(yùn)算符是A)%=B)/C)=D)=22、已知各變量的類型說明如下:int k,a,b;unsigned long w=5;double x=1.42;則以下不符合C語(yǔ)言語(yǔ)法的表達(dá)式是A)x%(-3)B)w+=-2 C)k=(a=2,b=3,a+b)D)a+=a-=(b=4)*(a=3)23、若有定義:int a=7;float x=2.5,y=4.7;則表達(dá)式x+a%3*(int)(x+y)%2/4的值是A)2.500000B)2.750000C)3.500000D)0.00000024、請(qǐng)選出以下語(yǔ)句的輸出結(jié)果printf(%dn,strlen(t065xffn);A)5B

7、)14C)8D)輸出項(xiàng)不合法,無正常輸出25、設(shè)有數(shù)組定義: char array=China; 則數(shù)組 array所占的空間為A)4個(gè)字節(jié)B)5個(gè)字節(jié)C)6個(gè)字節(jié)D)7個(gè)字節(jié)26、以下不正確的敘述是A)在C程序中,逗號(hào)運(yùn)算符的優(yōu)先級(jí)最低B)在C程序中,APH和aph是兩個(gè)不同的變量C)若a和b類型相同,在計(jì)算了賦值表達(dá)式a=b后b中的值將放入a中,而b中的值不變D)當(dāng)從鍵盤輸入數(shù)據(jù)時(shí),對(duì)于整型變量只能輸入整型數(shù)值,對(duì)于實(shí)型變量只能輸入實(shí)型數(shù)值27、sizeof(float)是A)一個(gè)雙精度型表達(dá)式B)一個(gè)整型表達(dá)式C)一種函數(shù)調(diào)用D)一個(gè)不合法的表達(dá)式28、若x,i,j和k都是int型變量,

8、則計(jì)算表達(dá)式x=(i=4,j=16,k=32)后,x的值為A)4B)16C)32D)5229、下列程序的輸出結(jié)果是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.0730、設(shè)變量a是int型,f是float型,i是double型,則表達(dá)式10+a+i*f值的數(shù)據(jù)類型為A)intB)floatC)doubleD)不確定31、設(shè)以下變量均為int類型,表達(dá)式的值不為7的是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

9、=6,y+1,x=y,x+1)32、若有條件表達(dá)式 (exp)?a+:b-,則以下表達(dá)式中能完全等價(jià)于表達(dá)式(exp)的是A)(exp=0)B)(exp!=0)C)(exp=1)D)(exp!=1)33、以下選項(xiàng)中,與k=n+完全等價(jià)的表達(dá)式是A)k=n,n=n+1B)n=n+1,k=nC)k=+nD)k+=n+134、以下程序的輸出結(jié)果是main() int a=21,b=11;printf(%dn,-a+b,-b+a);A)30B)31C)32D)3335、設(shè)x、y均為整型變量,且x=10 y=3,則以下語(yǔ)句的輸出結(jié)果是printf(%d,%dn,x-,-y);A)10,3B)9,3C)9

10、,2D)10,236、表達(dá)式ab|(c&d)中運(yùn)算符優(yōu)先級(jí)最高的是A)|B)&C)D)()37、在C語(yǔ)言中,int,char和short三種類型數(shù)據(jù)在內(nèi)存中所占用的字節(jié)數(shù)A)由用戶自己定義B)均為2個(gè)字節(jié)C)是任意的D)由所用機(jī)器的機(jī)器字長(zhǎng)決定38、若有以下定義,則能使值為3的表達(dá)式是int k=7,x=12;A)x%=(k%=5)B)x%=(k-k%5)C)x%=k-k%5D)(x%=k)-(k%=5)39、下面程序的輸出結(jié)果為main() int a,b;b=(a=3*5,a*4,a*5);printf(%d,b);A)60B)75C)65D)無確定值40、假定x和y為double型,則表

11、達(dá)式x=2,y=x+3/2的值是A)3.500000B)3C)2.000000D)3.00000041、以下變量x,y,z均為double類型且已正確賦值,不能正確表示數(shù)學(xué)式子xyz的C語(yǔ)言表達(dá)式是A)x/y*zB)x*(1/(y*z)C)x/y*1/zD)x/y/z42、以下程序的輸出結(jié)果是main() char c=z;printf(%c,c-25);A)aB)ZC)z-25D)y43、有以下程序#include main() char *p=abcde0fghjik0 ;printf(%dn ,strlen(p);程序運(yùn)行后的輸出結(jié)果是A)12B)15C)6D)544、設(shè)有int x=1

12、1;則表達(dá)式(x+*1/3)的值是A)3B)4C)11D)1245、若變量a是int類型,并執(zhí)行了語(yǔ)句:a=A+1.6;,則正確的敘述是A)a的值是字符CB)a的值是浮點(diǎn)型C)不允許字符型和浮點(diǎn)型相加D)a的值是字符A的ASCII值加上146、下列程序運(yùn)行的結(jié)果是main()float x;int i;x=3.6;i=(int)x;printf(x=%f,i=%d ,x,i);A)x=3.600000,i=3B)x=3.6,i=3C)x=3,i=3D)x=3.600000,i=3.000000二、填空題1、在C語(yǔ)言中(以16位PC機(jī)為例),一個(gè)float型數(shù)據(jù)在內(nèi)存中所占的字節(jié)數(shù)為4;一個(gè)do

13、uble型數(shù)據(jù)在內(nèi)存中所占的字節(jié)數(shù)為【 】。2、以下程序的輸出結(jié)果是 【 】 。main ()int i=010,j=10; pirntf (%d,%dn,i,j);3、已知字母a的ASCII碼為十進(jìn)制數(shù)97,且設(shè)ch為字符型變量,則表達(dá)式ch=a+8-3的值為 【 】 。4、下列程序的輸出結(jié)果為 【 】 。main ()int x=3,y=5;printf (d,x=(x-)*(-y);5、設(shè)y是int型,請(qǐng)寫出y為奇數(shù)的關(guān)系表達(dá)式 【 】 。6、設(shè)int a=5,b=6,表達(dá)式(a=b-)?+a:-b的值是【 】 。7、以下程序的輸出結(jié)果是【 】。main()int a=0;a+=(a=8

14、);printf(%dn,a);8、在計(jì)算機(jī)中,字符的比較是對(duì)它們的【 】進(jìn)行比較。9、在內(nèi)存中,存儲(chǔ)字符x要占用1個(gè)字節(jié),存儲(chǔ)字符串X要占用【 】個(gè)字節(jié)。10、下列程序的輸出結(jié)果是16.00,請(qǐng)?zhí)羁?。main()int a=9, b=2;float x=【 】, y=1.1,z;z=a/2+b*x/y+1/2;printf(%5.2fn, z ); 11、以下程序段的輸出結(jié)果是【 】。main ()int a=2,b3,c=4;a*=16+(b+)-(+c);printf(%d,a);12、以下程序段的輸出結(jié)果是【 】 。int x=17,y=26;printf (d,y/=(x%=6);1

15、3、將以下程序?qū)懗扇窟\(yùn)算表達(dá)式是【 】 。if(ab)max=a;else max=b;14、下列y的值是 【 】。int y; y=sizeof (2.25*4);15、下列x的值是 【 】 。int x;x=sizeof 2.25*4;16、設(shè)x和y均為int型變量,且x=1,y=2,則表達(dá)式double(1+x/y)的值為【 】。17、把數(shù)學(xué)表達(dá)式 改寫成C語(yǔ)言的表達(dá)式是【 】。18、若有以下定義:char a;int b;float c; double d;則表達(dá)式a*b+d-c值的類型為【 】 。19、若有以下程序段:int c1=1,c2=2,c3;c3=1.0/c2*c1;則執(zhí)

16、行后,c3中的值是【 】 。三、部分填空題解析2、解析: 以0開頭的是八進(jìn)制數(shù)。3、解析: 在C語(yǔ)言中,整型,實(shí)型,字符型數(shù)據(jù)間可以混合運(yùn)算,在進(jìn)行運(yùn)算時(shí),不同類型的數(shù)據(jù)要先轉(zhuǎn)換成同一類型,然后再進(jìn)行運(yùn)算。我們可以這樣計(jì)算本題,97+8-3=102,即102所對(duì)應(yīng)的字母為f。4、解析: x-的值為3,-y的值為4;注意前綴-和后綴-的區(qū)別。8、解析: C語(yǔ)言中,字符也可以進(jìn)行比較運(yùn)算,且是按照ASCII碼值進(jìn)行的。9、計(jì)算機(jī)存儲(chǔ)一個(gè)字符用1個(gè)字節(jié),存儲(chǔ)字符串時(shí),每個(gè)字符用占用1個(gè)字節(jié),另在字符串的有效字符之后存儲(chǔ)1個(gè)字符串的結(jié)束標(biāo)記符。所以存儲(chǔ)字符串“X”要占用2個(gè)字節(jié),存儲(chǔ)字符x只要1個(gè)字節(jié)

17、。10、解析: 本題最后一條語(yǔ)句,表示以浮點(diǎn)格式輸出z的值,寬度為5,其中所含2位小數(shù),應(yīng)該注意的是,兩個(gè)整型運(yùn)算結(jié)果仍為整型,如1/2的結(jié)果為0,對(duì)本題可逐步求解:16.00=9/2+2*x/1.1+1/216.00=4+2*x/1.1+012.00=2*x/1.1所以,x的值為6.6。11、解析: a*16(b+)-(+c)等價(jià)于a=a*(16(b+)-(+c),b+的值為3,+c的值為5,請(qǐng)注意前綴和后綴的用法。12、解析: 是取余運(yùn)算,操作數(shù)為整型,所以最后的結(jié)果也為整型,運(yùn)算過程如下:y/=(x%-6);y/=(x=x%6);y/=5;y=y/5;y=5;13、解析: 本題考查三目運(yùn)

18、算符的用法,條件運(yùn)算符要求有三個(gè)操作對(duì)象,稱三目(元)運(yùn)算符,它是C語(yǔ)言中惟一的一個(gè)三目運(yùn)算符。條件表達(dá)式的一般形式為:表達(dá)式1?表達(dá)式2:表達(dá)式3 所以,我們可以寫成(ab)?a:b,它是一個(gè)“條件表達(dá)式”。執(zhí)行順序是:如果(ab)條件為真,則條件表達(dá)式取值a,否則取值b。14、解析: sizeof (2.25*4)為sizeof (10.00)值為8,C語(yǔ)言規(guī)定浮點(diǎn)型常量當(dāng)雙精度處理(以IBM-PC機(jī)為例)。15、解析: sizeof運(yùn)算符高于算術(shù)運(yùn)算符,所以sizeof 2.25*4等價(jià)于(sizeof 2.25)*4為8432(以IBMPC機(jī)為例)。16、解析: 本題考查兩個(gè)知識(shí)點(diǎn)一是

19、x/y的值為整型即為0,二是數(shù)字1存放在double中是double類型。18、解析: C語(yǔ)言中,如果運(yùn)算符兩邊的數(shù)據(jù)類型不同,將進(jìn)行類型轉(zhuǎn)換,根據(jù)轉(zhuǎn)換規(guī)則,短整型轉(zhuǎn)為長(zhǎng)整型;整型轉(zhuǎn)換為實(shí)型。19、解析: 在賦值運(yùn)算中,如果表達(dá)式中變量和常量的數(shù)據(jù)類型不一致就會(huì)自動(dòng)進(jìn)行類型轉(zhuǎn)換。系統(tǒng)會(huì)計(jì)算1.0/c2,由于1.0是實(shí)型,所以均先轉(zhuǎn)化為雙精度型0.500000,再和c1轉(zhuǎn)化后的雙精度數(shù)相乘得0.500000。但其要賦值給整型變量c3,故要進(jìn)行強(qiáng)制轉(zhuǎn)換,c3的值為0。第 3 章 順序程序設(shè)計(jì)一、選擇題1、結(jié)構(gòu)化程序所規(guī)定的三種最基本控制結(jié)構(gòu)是A)輸入、處理、輸出B)樹形、網(wǎng)形、環(huán)形C)順序、選擇、

20、循環(huán)D)主程序、子程序、函數(shù)2、若說明int *p,n;則通過語(yǔ)句scanf能夠正確讀入數(shù)據(jù)的程序段是A)p=&n;scanf(%d,&p);B)p=&n;scanf(%d,*p);C)scanf(%d,n);D)p=&n;scanf(%d,p);3、以下程序段的輸出結(jié)果是int a=1234;printf(%2dn,a);A)12B)34C)1234D)提示出錯(cuò)、無結(jié)果4、已有定義int a=-2;和輸出語(yǔ)句 printf(%8lx,a);以下正確的敘述是A)整型變量的輸出形式只有%d一種B)%x是格式符的一種,它可以適用于任何一種類型的數(shù)據(jù)C)%x是格式符的一種,其變量的值按十六進(jìn)制輸出,但%8lx是錯(cuò)誤的D)%8lx不是錯(cuò)誤的格式符,其中數(shù)字8規(guī)定了輸出字段的寬度5、對(duì)下面程序描述正確的一項(xiàng)是 (每行程序前面的數(shù)字表示行號(hào))1 main()2 3 float a3=0.0;4 int i;5 for(i=0;i3;i+)scanf(%d

溫馨提示

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