《高級(jí)語(yǔ)言程序設(shè)計(jì)》復(fù)習(xí)題及答案_第1頁(yè)
《高級(jí)語(yǔ)言程序設(shè)計(jì)》復(fù)習(xí)題及答案_第2頁(yè)
《高級(jí)語(yǔ)言程序設(shè)計(jì)》復(fù)習(xí)題及答案_第3頁(yè)
已閱讀5頁(yè),還剩68頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

《高級(jí)語(yǔ)言程序設(shè)計(jì)》復(fù)習(xí)題及答案《高級(jí)語(yǔ)言程序設(shè)計(jì)》復(fù)習(xí)題及答案一、選擇題以下敘述正確的( :A) CmainC程序的每行只能寫(xiě)一條語(yǔ)句CD)2、以下說(shuō)法中正確的是()A)CCmain()函數(shù)開(kāi)始執(zhí)行Cmain()D)Cmain()函數(shù)必須放在程序的開(kāi)始部分3、下列選項(xiàng)種說(shuō)法正確的是( )A)函數(shù)由聲明部分和執(zhí)行部分兩部分組成B)語(yǔ)言中main函數(shù)一定在程序的開(kāi)始部分C)CD)C4設(shè)有說(shuō)明a;floatb;char c;doubled;則表達(dá)式1.3*a+2*b*c+d*(int)值的類型為( 。double B) char C) float D) int5、 C語(yǔ)言的標(biāo)識(shí)符只能由字母、數(shù)字和下劃線三種字符組成,且第一個(gè)字符( A)必須為字母必須為下劃線必須為字母或下劃線D)6、以下不正確的C語(yǔ)言標(biāo)識(shí)符是( )。A)ABC B)abc C)a_bc D)7、下列運(yùn)算符中優(yōu)先級(jí)最高的是( )A) < B)+ C)&& 8、以下選項(xiàng)中屬于C語(yǔ)言中合法關(guān)鍵字的是( )A)Float(yī) B)abc C)int D)CASE9、若x、i、j和k都是int型變量,計(jì)算下面表達(dá)式后,x的值為( x=(i=4,j=16,k=32)A)4 B)16 C)32 D)5210、在C語(yǔ)言中,要求數(shù)據(jù)必須是整型的運(yùn)算符是( A)/ B)+ + C)?。?D)%11、若整型變量x的值為8,則下列表達(dá)式中值為1的表達(dá)式是A)x+=x-=x B)x%=x-1 C)x%=x%=3 D) 12、若w=1,x=2,y=3,z=4,則條件表達(dá)式“w>x?w:y<z?y:z”的值是( A)4 B)3 C)2 D)113、有以下程序,程序運(yùn)行后的輸出結(jié)果是。main(){inti=1,j=2,k=3;if(i++==1&&(++j==3||k++==3))printf("%d%d%d\n",i,j,k);}A)123 B)234 C)223 D)2 3314、下面程序的輸出結(jié)果是main(){int if(x<y)if(y<0)z=0;else rintf“%d\n”z;}A)3 B)2 C)1 D)015、執(zhí)行下列語(yǔ)句后,a的值為( main( ){inta=5;prinf(“%d\n”(a=3*5,a*4,a+5));}A)65 B)20 C)15 D)1016、下列程序段中,有錯(cuò)誤的行是列定行號(hào) intx=0,y=10;2 switch(x)3 {case3:4 case–1:y=y-2;break;5 casey+1:x+=5;6 default:printf(“%d,%d”,x,y);}A)4 B)3 C)5 D)無(wú)錯(cuò)誤17、若i為整型變量,則以下循環(huán)執(zhí)行次數(shù)是( )#include"stdio.h"voidmain(){ int i;for(i=2;i==0;prntf("%d",i--;}A)無(wú)限次 B)0次 C)1次 D)2次18、若有以下定義,doublea[10];則a數(shù)組元素下標(biāo)的上、下限分別為(A)1,10 B)0,9 C)0,10 D)1,919、若已定義的函數(shù)有返回值,則以關(guān)于該函數(shù)調(diào)用的敘述中錯(cuò)誤的是()A) 調(diào)用可以作為獨(dú)立的語(yǔ)句存在 B)調(diào)用可以作為一個(gè)函數(shù)的實(shí)參C)調(diào)用可以出現(xiàn)在表達(dá)式中 D)調(diào)用可以作為一個(gè)函數(shù)的形20、定義如下變量和數(shù)組:inti;intx[3][3]={1,2,3,4,5,6,7,8,9};則下面語(yǔ)句for(i=0;i<3;i++)printf("%d",x[i][2-i]);輸出結(jié)果是( )A)159B)147C)35 7 D)36921、以下不能正確定義二維數(shù)組的選項(xiàng)是A)inta[2][2]={{1},{2}}; B) inta[][2]={1,2,3,4};C)inta[2][2]={{1},2,3}; D)int a[2][]={{1,2},{3,4}};22:inta[5]={10,20,30,40,50},*p=a;則執(zhí)行++(*p)+的值是A)10 B) 11 C)20 D)2123、函數(shù)的嵌套調(diào)用是指A)直接調(diào)用本函數(shù)在定義函數(shù)時(shí),又定義另一個(gè)函數(shù)C)24、下列說(shuō)法正確的是A)被調(diào)用函數(shù)必須先調(diào)用,后聲明voidD)實(shí)參可以是任意表達(dá)式25、以下描述正確的是()continueswitchbreakbreakcontinueD)break26、若有說(shuō)明語(yǔ)句int a[3][4]”,則對(duì)數(shù)組元素的正確引用格式是( A)a[2][4] B)a[1,3] C)a[1+1][0] D)a(2)(1)27、若有說(shuō)明:“int a[3][4]={0};”,則下面正確的敘述是( A)只有元素a[0][0]可得到初值0B)此數(shù)組說(shuō)明語(yǔ)句不正確C)數(shù)組a中各元素都可得到初值,但其值不一定為0D)數(shù)組a中每個(gè)元素均可得到初值028、定義數(shù)組a和b的語(yǔ)句是:“har a[]=“ABCDEF”; char b[]={‘A’,B‘C‘D‘E‘”則以下敘述正確的是( )A)a和b數(shù)組完全相同 B)a與b數(shù)組元素個(gè)數(shù)相同C)a和b中都存放字符串 D)a數(shù)組比b數(shù)組元素個(gè)數(shù)29、語(yǔ)句“int(*ptr)();”的含義是( A)ptr是指向一維數(shù)組的指針變量B)ptrintptrintint30、若有定義int *p[4];,則標(biāo)識(shí)符p是( A)一個(gè)指向整型變量的指針一個(gè)指針數(shù)組名D)無(wú)效的數(shù)組名31、在C語(yǔ)言中( )函數(shù)定義可以嵌套,但函數(shù)調(diào)用不可以嵌套C)D)函數(shù)定義和條用都不能嵌套32、下面程序的輸出結(jié)果是( #include<stdio.h>voidmain(){inti,j,x=0;for(i=0;i<=2;i++){x++;for(j=0;j<=2;j++){if(j%2)continue;x ++;}x++;}printf("%d\n",x); }A)4 B)6 C)8 33、執(zhí)行下列語(yǔ)句后,m的值為( )intm=1,x=2,y=3,z=4;m=m<x?m:x;m=m<y?m:y;m=m<z?m:z:A)1 B)4 C)2 D)334、下列程序段是實(shí)現(xiàn)給數(shù)組所有元素賦值操作,應(yīng)在下劃線上填入的是( int a[10];for(i=0;i<=9;i++)scanf(“%d”, A)a B)&a[i] C)a[i] D)&a[0]35、下列敘述正確的是()do-whiledo-whilebreakdo-whilewhileD)do-whilewhile36、下列程序的輸出結(jié)果為()#include“stdio.h”main(){inta,b;for(a=1,b=1;a<=100;a++){if(b>=20)break;if(b%3==1){b+=3;continue;}b+=5;}printf(“%d,%d”,a,b);}A) 8,20 B)8,22 C)7,20 D)37、設(shè) int a[5]={10,15,20,25,30};int*p;p=a+2;則表達(dá)式++*p的值為()A)20 B)15 C)16 D)2138、設(shè)w=1,x=2,y=3,z=4,a=5,b=6,則執(zhí)行一下語(yǔ)句后A)b的值分別為( (a=w>x)&&(b=y>z);A)0和0 B)5和0 C)0和6 D)5和39、下列語(yǔ)句的輸出為( )intx=-1;printf(“%d,%u,%o”,x,x,x);A)–1,-1,-1 B)–1,32767,-177777C)–1,32768,177777 D) –1,65535,17777740、下列函數(shù)調(diào)用語(yǔ)句中的實(shí)參個(gè)數(shù)為( )fun((a+b,x,y),fun(x,(x+z)));A)2 B)3 C)4 D)541、設(shè)有數(shù)組定義array[]=”china”;則數(shù)組array所占的內(nèi)存間為( )4個(gè)字節(jié) B)5個(gè)字節(jié) C)6個(gè)字節(jié) D)7個(gè)字42、以下程序段的運(yùn)行結(jié)果是( 。char c[5]={‘a(chǎn)’ ,’b’, ‘\0‘,‘c’ ,‘\0’};printf(“%s” , c);A)’a’’b’ B)ab C)ab c D)a 43、若C程序中出現(xiàn)死循則違背了算法的( )A)有效性 B)確定性C)有窮性 D)有一個(gè)或多個(gè)輸出44、設(shè)inta=20;則執(zhí)行表達(dá)式:a/=a+a后,a的值是( A)0 B)1 C)20 D)4045、intx,y,z,m=5,n=5;則執(zhí)行下面語(yǔ)句后的z值是( x=(--m==n++)?--m:++n;y=m++;z=n;A)5 B)10 C)6 D)746、執(zhí)行下列程序段后,i的正確結(jié)果是( )inti=10;switch(i){case9: case 10: i++;case11: ++i;default:i+=i;}pintf("%d",i ;A)10B)11C)12D)2447、若有定義:inta[10a[1]的地址的是()A)&a[0]++B)&a[1] C)&a[0]+1 D)a+148、變量的指針,其含義是指該變量的( )值 B)地址 C)變量名 D)一個(gè)標(biāo)49、有以下函數(shù)定義:voidfun(intn,doublex){…… }若以下選項(xiàng)中的變量都已正確定義并賦值,則對(duì)函數(shù)fun的正確調(diào)用語(yǔ)句是( A)fun(inty,doublem); B)k=fun(10,12.5);C)fun(x,n); D)void fun(n,x);50、設(shè)整型變量n=10,i=4,則賦值運(yùn)算n%=i+1執(zhí)行后,n的值是(A)0 B)1 C)2 D)351若int a,b; &a,不可以用( )作為輸入的分隔符A), B)空格 C)回車(chē) D)TAB鍵52、下面關(guān)于運(yùn)算符優(yōu)先順序的描述中正確的是:( )A)關(guān)系運(yùn)算符<算術(shù)運(yùn)算符<賦值運(yùn)算符<邏輯與運(yùn)算符B)邏輯運(yùn)算符<關(guān)系運(yùn)算符< 算術(shù)運(yùn)算符<賦值運(yùn)算符C)賦值運(yùn)算符<邏輯與運(yùn)算符<關(guān)系運(yùn)算符< 算術(shù)運(yùn)算D)算術(shù)運(yùn)算符< 關(guān)系運(yùn)算符<賦值運(yùn)算符<邏輯與運(yùn)算符53、為了判斷兩個(gè)字符串s1和s2是否相等,應(yīng)當(dāng)使用( )A)if(s1 ==s2) B)if(s1 =s2)C) if(strcpy(s1,s2)) D)istrcmp(s1,s2)==0)54、以下對(duì)二維數(shù)組進(jìn)行正確初始化的是( )。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}};55、若用數(shù)組名作為函數(shù)調(diào)用時(shí)的實(shí)參,則實(shí)際上傳遞給形參的是( )A)數(shù)組的首地址 B)數(shù)組的第一個(gè)元素值C)數(shù)組中全部元素的值?D)數(shù)組元素的個(gè)數(shù)56、以下錯(cuò)誤的描述是( )。? ?A)不同的函數(shù)中可以使用相同的變量名形式參數(shù)是局部變量一個(gè)函數(shù)內(nèi)部定義的變量只能在本函數(shù)范圍內(nèi)有效D) 在一個(gè)函數(shù)內(nèi)部的復(fù)合語(yǔ)句中定義的變量可以在本函數(shù)范圍內(nèi)有效57、下列程序的運(yùn)行結(jié)果是( )main( ){ int int *p=&i;i=8;printf(“%d”,*p);}A)10 B)8 C)程序錯(cuò)誤,不能運(yùn)行 D)結(jié)果不確定58、C語(yǔ)言中,double類型的數(shù)據(jù)占字節(jié)數(shù)為()A)1 B)2 C)4D)859、可在C程序中用作用戶標(biāo)識(shí)符的一組標(biāo)識(shí)符是()A)as_b3_123IfB)For-abccaseC)2cDOSIGD)voiddefineWORD60、以下字符中,不正確的C語(yǔ)言轉(zhuǎn)義字符是( )A)‘\\’ B)‘\018’C) ‘\Xaa’ D)61、C語(yǔ)言中,數(shù)據(jù)在內(nèi)存中都以( )形式存放A)原碼 B)反碼 C)ASCll碼 D)補(bǔ)62、下列運(yùn)算符中,優(yōu)先級(jí)最高的是( )A)&& B) ! C) ++ D)||63、有輸入語(yǔ)句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);為使變量a 的為11,b為12,c為13,則從鍵盤(pán)輸入數(shù)據(jù)的正確形式應(yīng)當(dāng)是( )。A)111213B)11,12,13C)a=11b=12c=13D)a=11,b=12,c=1364、為表示關(guān)系-1≤x≤1應(yīng)使用的c語(yǔ)言表達(dá)式是()A)-1≤x≤1 B)-1=<x&&x=<1C)-1=<x=<1 D)x>=-1&&x<=165、若有以下定義:doublea;intb;floatc;chard;則表達(dá)式a*b/d+(d-c)值的類型為( )A)float B)int C)char D)66、下列程序輸出的結(jié)果是( )main(){inta=18;a+=a-=a*a;printf("%d",a);}A)-612 B)9 C)0 D) 3667、break語(yǔ)句( )A) ifB)只能出現(xiàn)在循環(huán)體中C)可用在循環(huán)體和switch語(yǔ)句中D)可用在函數(shù)中的任何語(yǔ)句68、如int k=11;則執(zhí)行語(yǔ)句k=1/3*++k;后k取值為( )A) 12 B)3 C)4 D) 69、以下程序的輸出結(jié)果是( )main(){intx=12,y=012;printf("%d%d\n",x--,--y);}A)12 9 B)11 11 C)11 12 D)12 1170、 設(shè)intx=1,y=5;表達(dá)式(!x||y--||++x)的值是()A)0B)1 C)5D)471kwhilek=10;while(0) k=k-1;A)一次都不執(zhí)行 B)1C)10D)無(wú)限次72、有以下程序( )fun(inta,intb){ if(a>b)returnb;elsereturnb;}main( ){int x=3,y=8,z=6,r;r=fun(x, y+z);printf("%d\n",r);程序運(yùn)行后的輸出結(jié)果是()A)3 B)6C)8D)1473、若有說(shuō)明:intn=17,*p=&n,*q=p;,則以下非法的賦值語(yǔ)句是( )A)p=q; B)*p=*q; C)n=*q; D)p=n;74、以下程序的功能是:按順序讀入10名學(xué)生4門(mén)課程的成績(jī),計(jì)算出每位學(xué)生的平均分并輸出,程序如下:main(){ intn,k;floatscore,sum,ave;sum=0.0;for(n=1;n<=10;n++){ for(k=1;k<=4;k++){ scanf(“%f”,&score); ave=sum/4.0;printf(“NO%d:%f\n”,n,ave);}}上述程序運(yùn)行后結(jié)果不正確,調(diào)試中發(fā)現(xiàn)有一條語(yǔ)句出現(xiàn)在程序中的位置不正確。這條語(yǔ)句是()A) sum=0.0;B)sum+=score;C) ave=sun/4.0;D)printf(“NO%d:%f\n”,n,ave);75、數(shù)組定義為chara[10]={‘a(chǎn)’,‘b’,‘c’};該數(shù)組包括的元素個(gè)數(shù)是( A)3 B)9 C)4 D)1076、下面程序的輸出結(jié)果是( )main ( ){ int x=2,y=-1,z=2;if(x< y)if( y<0)z =0;elsez=-1+x++;printf("%d\n",z++ }A) 3B) 2 C)1D)077、有以下程main( { int a[]={0,1,2,3,4,5,6,7,8,9}, *pfor(p=&a[9];p>=a;p--)printf("%d,",*p);}程序運(yùn)行后的輸出結(jié)果是( )A)0 1 2 3 4 5 6 7 8 B)2,3,4,5,6,7,8,9,10,1C)0,1,2,3,4,5,6,7,8,9,D)9,8,7,6,5,4,3,2,1,0,78、執(zhí)行循環(huán)語(yǔ)句:for(x=y(tǒng)=0;y!=250||x<4;x++)y+=50;其循環(huán)體執(zhí)行的次數(shù)為( )A)5 B)4

C)3

279、如intx=14;下列求商y(需小數(shù)結(jié)果)的表達(dá)式哪一個(gè)不對(duì)( )A)y=x/(5+.0)80、設(shè)有以下程序段( intx=0,s=0;

B)y=x/5.

C)y=1*x/5

D) y=x/5*1.0while(!x!=0)s+=++x;printf("%d",s);則:A)運(yùn)行程序段后輸出0 B)運(yùn)行程序段后輸出C)程序段中的控制表達(dá)式是非法 D)程序無(wú)法運(yùn)行81、有以下程序,程序運(yùn)行后的輸出結(jié)果是( )#include"stdio.h"voidmain(){inti=0,j=2,m=3,n;n=i++<=1&&j>=2&&m++;printf("%d,%d,%d,%d\n",i,j,m,n);}A)2,2,4,1 B)2,2,3,1 C)1,2,4,1 82、下面程序的輸出結(jié)果是( )#include<stdio.h>void main(){int switch(x){case 1:b++;case2:a++;b++;break;case 3:a++;b++;}printf("%d,%d\n",a,b);}A)2,1 B)2,2 C)1,2 二、程序分析及填空1.C語(yǔ)言的基本數(shù)據(jù)類型中,有兩種實(shí)數(shù)類型變量,一種是float型,另一種是()型。2.若程序中有語(yǔ)句“scanf“a=%d,b=%”,&a,&b)”,在執(zhí)行程序時(shí),要輸入和5兩個(gè)數(shù),應(yīng)該鍵入( 。3.包含數(shù)學(xué)類庫(kù)函數(shù)的頭文件名稱是( )。4.字符串“ab\034\\\x79”的長(zhǎng)度為( 。數(shù)組元素作函數(shù)參數(shù)進(jìn)行的是 傳遞,數(shù)組名作函數(shù)參數(shù)進(jìn)行的是 傳遞。設(shè)有函數(shù)調(diào)用語(yǔ)句則函數(shù)實(shí)參的數(shù)目有 個(gè)。在數(shù)組int score[10]={1,2,3,4,5,6}中,元素定義的個(gè)數(shù)有 個(gè),其score[8]的值為 。8.C語(yǔ)言源程序文件的后綴是 經(jīng)過(guò)編譯后,生成文件的后是 ,經(jīng)過(guò)連接后,生成文件的后綴是 。結(jié)構(gòu)化程序由 、 、 三種基本結(jié)構(gòu)組成。9、C語(yǔ)言提供的三中邏輯運(yùn)算符是_ __ _ 、 __(dá)__ 、 。10、若a=1,b=4,c=3,則表達(dá)式!(a<b)||!c&&1的值是 _ __(dá)。11、在C語(yǔ)言中,若對(duì)函數(shù)類型未加說(shuō)明,則函數(shù)的隱含類型為 型。12、在C語(yǔ)言中,唯一的一個(gè)三目運(yùn)算符是 。13、以下程序運(yùn)行后的輸出結(jié)果是 _ __(dá)_ __(dá)#include<stdio.h>voidmain(){int m=5;if >elseprintf("%d\n",m--);}14、以下程序運(yùn)行后的輸出結(jié)果是 #include<stdio.h>void main(){ intx=15;while(x>10&&{ x++;if(x/3){x++;break;}elsecontinue;}printf("%d\n",x);}15、下面程序的運(yùn)行結(jié)果是: #include "stdio.h"voids*a,int*b){int *t;t=a; a=b; b=t;}voidmain(){int s);printf("%d%d\n",*p,*q);}、在執(zhí)行以下程序時(shí),如果從鍵盤(pán)上輸入:AdEf<回車(chē)>,則輸出為 #include"stdio.h"voidmain(){char ch;while((ch=getchar())!='\n'){if (ch>='A'&&ch<='Z')ch=ch+32;elseif(ch>='a'&&ch<='z')ch=ch-32;printf("%c",ch);}printf("\n");}17.設(shè)有以下宏定義,則執(zhí)行賦值語(yǔ)句a=PP*20;(a為int型變量)后,a的值是 。#definePR100#definePP 18、下列程序段的輸出結(jié)果為intx=10,y=1;y=y--||x++;printf(“%d,%d”(y,x++),y);19、有以下程序#include"stdio.h"void main(){int a[4][4]={{1,2,3,4},{5,6,7,8},{3,9,10,2},{4,2,9,6}};inti,s=0;for(i=0;i<4;i++)s+=a[i][i];printf("%d\n",s);}程序的功能為20、有以下程序#include<stdio.h>voidmain( ){int p=2, while(p<=5)t=t*p++;printf("%d\n",t);}該程序運(yùn)行后變量p和t中的值分別為 21、有以下程序#include<stdio.h>voidmain(){inta,b,c=221;a=c/100%3;b=a&&-1;printf(“%d,%d”,a++,b--);}該程序運(yùn)行后的輸出結(jié)果是2 2 、 以 下 程 序 的 輸 出 結(jié) 為 。#include<stdio.>main(){inta[]={1,2,3,4,5,6},*p=a;*(p+3)+=2;printf(“%d,%d”,*p,*(p+3));}23、以下程序的輸出結(jié)果為 。#includeintx1=40,x2=70;void main( ){ int x3=50,x4=60;intsub(intx3,int x4);printf("%d,%d\n",x1,x2;}voidsub(intx,inty){ x1=x;Cmain(){ int m=6;if(m--<6)printf("%d\n",++m);elseprintf("%d\n",--m);}25、下面C程序的輸出是:#include main(){inta=5,*p=&a;*p=a+*p;printf 26C#include"stdio.h"voidf(intn){printf("%3d",n%10);if(n>0)f(n/10);}void{f(12);}27、以下程序的輸出結(jié)果是:#include"stdio.h"voidmain(){inty;for(y=6;y>0;y--)if(y%3==0){printf("%d",--y); continue;} }28、在數(shù)組int score[10]={1,2,3,6}中,score[7]的值為_(kāi)__(dá)__ 。29、程序運(yùn)行后的輸出結(jié)果是#include voidmain(){inta=1,b=2;printf("%d",(a++,++b,(a++)+b))}30、以下程序運(yùn)行后的輸出結(jié)果#include <stdio.h>voidmain(){inti,x[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i<3;i++)printf“%d”,x[i][2-i]);}31. 以下程序運(yùn)行后的輸出結(jié)果是#include<stdio.h>main(){inta=5,b=7,c;printf(“%d\n”,c=a>b);}以下程序運(yùn)行后的輸出結(jié)果#include "stdio.h"main( ){inti,j,k=0,m=0;for(i=0;i<2;i++){for(j=0;j<3;j++)k++;k-=j;}m=i+j;printf("k=%d,m=%d\n",k,m);}以下程序運(yùn)行后的輸出結(jié)果#include "stdio.h"s *p1, int*p2){ intp;p=*p1; *p1=*p2; *p2=p;}main(){ inta=12,b=13;int*pointer_1,*pointer_2;pointer_1=&a; if(a<b)s);printf("\n%d,%d\n",a,b);}#include"stdio.h"main(){ inti,*p,a[7]={1,2,3,4,5,6,7};p=a+2;for(i=0;i<3;i++,p++)printf("%d",*p);}main(){intn;for(n=1;n<=10;n++)??if(n%2)continue;? else printf(“%d\t”,n);}以下程序運(yùn)行后的輸出結(jié)果main( ){?charch[]=”aB12cd##78EF%@”;j=k=0;while(ch[k]!=’\0’){if(ch[k]>=’A’&&ch[k]<=’Z’||ch[k]>=’a’&&ch[k]<=’z’)??ch[j++]=ch[k];k++;}??

ch[j]=’\0’;?printf(“%s”,ch);}37、以下程序運(yùn)行后的輸出結(jié)果是 。#include<stdio.h>voids*a,int*b){int *t;t=a; a=b; b=t;}voidmain(){int x=5,y=9,*p=&x,*q=&y;swap(p,q);printf(“%d,%d\n,*p,*q);}38、有以下程序,該程序運(yùn)行后的輸出結(jié)果是#include<stdio.h>voidmain( ){inta,b,c=222;a=c/100%3;b=-1&&-1;printf(“%d,%d”,a,b);}三、補(bǔ)全程序題1、輸入三個(gè)整數(shù)x,y,z,把這三個(gè)數(shù)由小到大輸出Main( ){intx,y,z,t;scanf(“%d%d%d”,&x,&y,&z);if (x>y){}/*交換x,y*/if(x>z){}/*x,z*/if(y>z){}/*交換z,y的值*/printf(“smalltobig: %d%d%d\n”,x,y,z);}2、求圓的面積和周長(zhǎng),請(qǐng)補(bǔ)全下面程序:#definePI void main( ){ float(yī)r,s,y; /*r;s表示面積;y表示周長(zhǎng)scanf(“%f”,&r);s=PI* ;y=2* ;printf(“s=%f,y=f”,s,y);}3a1序:float a1( ){floatb[10],sum= ,aver;intfor(i=0;i<10;i++)scanf(“%f,&b[i]);for(i=0;i<10;i++)sum+= ;aver=sum/10;return ;}410#include<stdio.h>void main(){inti,j,k,max,min,a[5];for(i=0;i<5;i++);max=min=a[0];j=k=0;for({if(max<a[i]){ ; ;}if( ){ min=a[i];k=i;}}printf(“max:a[%d]=%d,min:a[%d]=%d,j,max,k,min);}ij空。voidmain(){ int n,i,j;printf(“EnterINTnumbers,with0toend\n”);i=j=0;scanf(“%d”,&n);while__ _ { if(n>0)_ _ if(n<0)__ _ ;scanf(“%d”,&n);}printf(“i=%4dj=%4d\n”,i,j);}63#include<stdio.h>voidmain(){intx,x1,x2,x3,y;printf“pleaseinputscanf“%3d,&x);x1= ;x2=x/10%10;x3= ;y=x3*100+x2*10+x1;printf“y=%d\n,y);}7、計(jì)算s=1!+2!+3!+……+n!#include<stdio.h>long f(intn){int i;long for(i=1;i<=n;i++);;}voidmain(){inti,n;;scanf(“%d,&n);for( ; ; )s=s+f(i);printf(“s=%ld\n,s;}a==b,a!=b。#include<stdio.h>main(){ inta,b;printf("Enter integeraandb:");scanf("%d%d", );printf("a==b\n");elseprintf("a!=b\n");}110100#define PI 3.14159main(){intr;floatarea;for(r=1;r<=10;r++){ area= ;if(area>100) ;printf("r=%d,area=%.2f\n",r,area);}}10.以下程序以每行輸出8個(gè)數(shù)據(jù)的形式輸出a數(shù)組。#include<stdio.h>voidmain( ){inta[50],i;for(i=0;i<50;i++) scanf(“%d”,&a[i]);for(i=0;i<50;i++){if( ) ;printf(“%3d”, );}}11、以下程序的功能是:從鍵盤(pán)上輸入20個(gè)學(xué)生的成績(jī),統(tǒng)計(jì)計(jì)算出平均成績(jī),并輸出低于平均分的學(xué)生成績(jī),用輸入負(fù)數(shù)結(jié)束輸入。請(qǐng)?zhí)羁?。main(){float intn=0,i;printf("entermark:\n");scanf("%f\n",&a);while (a>=0&&n<20){sum+= ;x[n]= n++;scanf("%f\n",&a);}ave= ___(dá);printf("Output;\n");printf("ave=%f\n",ave);}12a,bmain(){int a,b;scanf("%d%d",&a,&b);printf("a=%d,b=%d\n",a,b);a= ;b= ;a= printf("a=%d,b=%d\n",a,b);}13、用遞歸法求n!,遞歸公式如下,補(bǔ)全下面程序1 (n=0n=1)n!=n*(n-1) (n>=2)longfun(intn){ longt;if(n==0||n==1)elset= ;return(t;}14、函數(shù)a1的功能是求一維數(shù)組中所有元素的平均值并返回給主調(diào)函數(shù)。請(qǐng)補(bǔ)全下面程序:float a1(){float b[10],sum=0,aver;intfor(i=0;i<10;i++)scanf(“%f,&b[i]);for(i=0;i<10;i++)sum+= aver=sum/10;return ;}15、把100---200之間的能被3和7整除的數(shù)輸出,請(qǐng)補(bǔ)全下面程序viod main( ){ intn;for(n=100;n ;n++){ if( ) Printf(“%5d”,n);}}16、下面程序的功能是輸出10006,3main(){inti,j;for(i=0; ;i++){j=i*10+6;if( )countinue;printf("%d",j);}}17、有以下程序段:s=1.0;for(k=1;k<=n;k++)s=s+1.0/(k*(k+1));printf("%f\n",s);填空完成下述程序,使之與上述程序的功能完全相同。s=0.0;;k=0;do{s=s+d;; while( );printf("%f\n",s);183#include<stdio.h>voidmain(){intx,x1,x2,x3,y;printf(“pleaseinputscanf(“%3d,&x);x1= ;x2=x/10%10;x3= ;y=x3*100+x2*10+x1;printf(“y=%d\n”,y);}四、程序改錯(cuò)1.[程序說(shuō)明]以下程序的功能是在主程序中輸入一個(gè)整數(shù),在子程序中得到該數(shù)的絕對(duì)值,并在主函數(shù)中輸出該數(shù)的絕對(duì)值。include“stdio.h”main(){inta;scanf(“%d”,a);rintf(“%d\n”,ABSBabs(intx);{reurn(x;elseretun(x;}2、用Fibonacci20main(){inti;intf[20]=(1,1);__for(i=1;i<=20;i++)__f[i]=f[i-2]+f[i-1];for(i=1;i<=20;i++)___(dá){ if(i/4=0)printf(\n);__(dá)printf("%12d",f[i]);}}voidmain( ){intx,y=z=5intaver;x=7AVER=(x+y+z)/3;printf(“AVER=%d\n”,aver);}}下面程序希望實(shí)現(xiàn)的功能是:定義兩個(gè)字符數(shù)組STR1、STR2,在鍵盤(pán)上輸入STR2STR1改正后的結(jié)果填入右側(cè)對(duì)應(yīng)的橫線#includestring.hmain(){charstr1[100]="abc",str2[];scanf("%s"&str2);for(i=0;str1[i]!='\0';i++)for(j=0;str2[j]!='\0';j++)str1[i]=str2[j];printf(“%c”,str1);puts(str2);}請(qǐng)將改正后的結(jié)果填入右側(cè)對(duì)應(yīng)的橫#include "stdio.h",Voidmain{longintd;float(yī)x;Scanf(“%d\n”,d);x=1/2*SIN(d*pi/180.0);printf“x=%f\n,x)}五、編寫(xiě)程序1、定義求mn的函數(shù)intf(intm,intn)。并求解54。2、編程實(shí)現(xiàn)1,2,3,4,5這5個(gè)數(shù)的乘積,并輸出結(jié)果3、有一分段函數(shù): x-1 (x<0)y= x (x=0)x+1 (x>0 xy4、編寫(xiě)程序求出100005、從鍵盤(pán)上輸入10個(gè)數(shù),輸出最大、最小元素的值及它們的下標(biāo)。6mn,求其最大公約數(shù)和最小公倍數(shù)。7、計(jì)算s=1!+2!+3!+……+n!8、輸出1000以內(nèi)的個(gè)位數(shù)為6,且能被3整除的所有數(shù)9.從鍵盤(pán)輸入3510、編程實(shí)現(xiàn)1,2,3,……5050個(gè)數(shù)的和,并輸出結(jié)果。114×4的二維數(shù)組主對(duì)角線上的所有數(shù)據(jù)之和及平均值,并將大于平均值的數(shù)進(jìn)行輸出。12.1013.1003514.用函數(shù)將數(shù)組an統(tǒng)計(jì)結(jié)果。Itisaprimeer.題號(hào)答案1C2題號(hào)答案1C2B3A4A5C6D7B8C9C10B、D題號(hào)111281920答案BBDBCBBDC題號(hào)答案21D2223D24D25B26C27D28D29C30B題號(hào)337383940答案BDABDBDADA題號(hào)41424344454647484950答案CBCADDABCA題號(hào)557585960答案ACDBADBDAB題號(hào)61626364656667686970答案DB、CDDDACDAB題號(hào)71727374757677787980答案ADDADBDADB題號(hào)8182答案CC二、程序分析及填空1、 double2、 a=3,b=53、 math.h4、 55、 值6、 37、 10地址08、 .c9、 !10、 011、int12、?:13、614、1715、 3516、aDeF.obj&&.exe||順序選擇循環(huán)17、10000117、1000018、11,019、2320、6,12021、2,122、1,623、40,7024、 425、 a=1026、 空格空格2空格空格1空格空格027、5228、 029、430、35731、 032、 33、 13,1234、 34535、 2->4->6->8->10(注:每一個(gè)箭頭代表七個(gè)空格)36、 aBcdEF37、5,9(注:該題和15題類似,但數(shù)據(jù)和輸出形式均不同)38、2,1(注:該題和21題基本相同,差別在于數(shù)據(jù)分別為222和221)三、補(bǔ)全程序題1、 t=x,x=y,y=tt=x,x=z,z=tt=y,y=z,z=t2、 PI*r3、 0或0.0或0.或.0等形b[i]aver4、 scanf(“%d”,&a[i])max=a[i]j=imin>a[i]5、 (n!=0)i++6、 x/100x%107、 t*=i或t=t*ireturnt或return(t)ints=0i=1i<=ni++(以上三個(gè)空也可以為:i=n i>=18、 &a,&bif(a=9、 PI*r*r10、 i%8==0printf(“\n”)或putchar(‘\n’)a[i]11、 aasum/n12、 a+ba-ba-b13、 n*fun(n-1)

i--)14、 b[i]aver(同3題15、 <=200n%3==0&&n%7=16、 i<100或i<=99j%3==017、 d=1.0k++k<=n18、 x%10四、程序改錯(cuò)1、 #include “stdio.h”(缺少#號(hào))缺少取地址運(yùn)算符&)printf(“%d\n”,abs(a));(函數(shù)名為abs,實(shí)參為a)abc(intx)(多了分號(hào);)return(-x)(返回值為-x而不是2、 (1,1)改為[1,1]改為 i=1;i<=20;i++改為i/4=0 改為 i%4==0(\n) (”\n”)3、 intfloatav

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論