C語言期中試卷_第1頁
C語言期中試卷_第2頁
C語言期中試卷_第3頁
C語言期中試卷_第4頁
C語言期中試卷_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

PAGE測試A卷一、單選題(40分)第1題(2.0分)題號:1939以下描述中,正確的是()。A:預(yù)處理是指完成宏替換和文件包含中指定的文件的調(diào)用B:預(yù)處理指令只能位于C源文件的開始C:C源程序中凡是行首以#標(biāo)識的控制行都是預(yù)處理指令D:預(yù)處理就是完成C編譯程序?qū)源程序第一遍掃描,為編譯詞法和語法分析作準(zhǔn)備答案:C第2題(2.0分)題號:1944執(zhí)行下面程序后,輸出結(jié)果是()。main(){a=45,b=27,c=0;c=max(a,b);printf("%d\n",c);}intmax(x,y)intx,y;{intz;if(x>y)z=x;elsez=y;return(z);}A:45B:27C:18D:72答案:A第3題(2.0分)題號:1853以下標(biāo)識符中,不能作為合法的C用戶定義標(biāo)識符的是()。A:a3_b3B:voidC:_123D:IF答案:B第4題(2.0分)題號:1880下列語句的結(jié)果是()。main(){intj;j=3;printf("%d,",++j);printf("%d",j++);}A:3,3B:3,4C:4,3D:4,4答案:D第5題(2.0分)題號:1920下列程序的輸出結(jié)果是()。main(){intx=1,y=0,a=0,b=0;switch(x){case1:switch(y){case0:a++;break;case1:b++;break;}case2:a++;b++;break;case3:a++;b++;break;}printf("a=%d,b=%d\n",a,b);}A:a=1,b=0B:a=2,b=1C:a=1,b=1D:a=2,b=2答案:B第6題(2.0分)題號:1910執(zhí)行下列語句后,a和b的值分別為()。inta,b;a=1+'a';b=2+7%-4-'A';A:-63,-64B:98,-60C:1,-60D:79,78答案:B第7題(2.0分)題號:1917在以下給出的表達(dá)式中,與do--while(E)語句中的(E)不等價(jià)的表達(dá)式是()。A:(!E==0)B:(E>0||E<0)C:(E==0)D:(E!=0)答案:C第8題(2.0分)題號:1899已知字母a的ASCII十進(jìn)制代碼為97,則執(zhí)行下列語句后的輸出結(jié)果為()。chara='a';a--;printf("%d,%c\n",a+'2'-'0',a+'3'-'0');A:b,cB:a--運(yùn)算不合法,故有語法錯C:98,cD:格式描述和輸出項(xiàng)不匹配,輸出無定值答案:C第9題(2.0分)題號:1900下列程序的輸出結(jié)果為(A)。main(){intm=7,n=4;floata=38.4,b=6.4,x;x=m/2+n*a/b+1/2;printf("%f\n",x);}A:27.000000B:27.500000C:28.000000D:28.500000答案:A第10題(2.0分)題號:1921在C語言中,為了結(jié)束由while語句構(gòu)成的循環(huán),while后一對圓括號中表達(dá)式的值應(yīng)該為()。A:0B:1C:TrueD:非0答案:A第11題(2.0分)題號:1915以下程序的運(yùn)行結(jié)果是()。main(){intn;for(n=1;n<=10;n++){if(n%3==0)continue;printf("%d",n);}}A:12457810B:369C:12D:1234567890答案:A第12題(2.0分)題號:1914以下程序的運(yùn)行結(jié)果是()。main(){inti=1,sum=0;while(i<10)sum=sum+1;i++;printf("i=%d,sum=%d",i,sum);}A:i=10,sum=9B:i=9,sum=9C:i=2,sum=1D:運(yùn)行出現(xiàn)錯誤答案:D第13題(2.0分)題號:1876下列程序的輸出結(jié)果是()。main(){charc1=97,c2=98;printf("%d%c",c1,c2);}A:9798B:97bC:a98D:ab答案:B第14題(2.0分)題號:1858在C語言中,能代表邏輯值“真”的是()。A:TrueB:大于0的數(shù)C:非0整數(shù)D:非0的數(shù)答案:D第15題(2.0分)題號:1903a,b為整型變量,二者均不為0,以下關(guān)系表達(dá)式中恒成立的是()。A:a*b/a*b==1B:a/b*b/a==1C:a/b*b+a%b==aD:a/b*b==a答案:C第16題(2.0分)題號:1889下列程序的輸出結(jié)果是()。main(){inta=7,b=5;printf("%d\n",b=b/a);}A:0B:5C:1D:不確定值答案:A第17題(2.0分)題號:1916在C語言中,if語句后的一對原括號中,用以決定分支的流程的表達(dá)式()。A:只能用邏輯表達(dá)式B:只能用關(guān)系表達(dá)式C:只能用邏輯表達(dá)式或關(guān)系表達(dá)式D:可用任意表達(dá)式答案:D第18題(2.0分)題號:1924設(shè)j和k都是int類型,則for循環(huán)語句for(j=0,k=-1;k=1;j++,k++)printf("****\n");()。A:循環(huán)結(jié)束的條件不合法B:是無限循環(huán)C:循環(huán)體一次也不執(zhí)行D:循環(huán)體只執(zhí)行一次答案:B第19題(2.0分)題號:1922下列程序的輸出為()。main(){inty=10;while(y--);printf("y=%d\n",y);}A:y=0B:while構(gòu)成無限循環(huán)C:y=1D:y=-1答案:D第20題(2.0分)題號:1882已知year為整型變量,不能使表達(dá)式(year%4==0&&year%100!=0)||year%400==0的值為“真”的數(shù)據(jù)是()。A:1990B:1992C:1996D:2000答案:A二、判斷題(5分)第1題(1.0分)題號:605C語言中"%"運(yùn)算符的運(yùn)算對象必須是整型.答案:Y第2題(1.0分)題號:601#define和printf都不是C語句。答案:Y第3題(1.0分)題號:597若有intⅰ=10,j=0;則執(zhí)行完語句if(j=0)ⅰ++;elseⅰ--;ⅰ的值為11。答案:N第4題(1.0分)題號:622如果被調(diào)用函數(shù)的定義出現(xiàn)在主調(diào)函數(shù)之前,可以不必加以聲明.答案:Y第5題(1.0分)題號:579x*=y+8等價(jià)于x=x*(y+8)。答案:Y三、程序填空題(18分)第1題(9.0分)題號:115/*【程序填空】功能:不用第三個變量,實(shí)現(xiàn)兩個數(shù)的對調(diào)操作。*/#include<stdio.h>main(){inta,b;scanf("%d%d",&a,&b);printf("a=%d,b=%d\n",a,b);/***********SPACE***********/a=【?】;/***********SPACE***********/b=【?】;/***********SPACE***********/a=【?】;printf("a=%d,b=%d\n",a,b);}答案:=======(答案1)=======a+b=======(答案2)=======a-b=========或=========a-b=======(答案3)=======a-b=========或=========a-b第2題(9.0分)題號:123/*【程序填空】功能:識別輸入的字符串,每個單詞輸出一行*/#include<stdio.h>#include<string.h>voidmain(){intc;intinspace;inspase=0;while((c=getchar())!='\n'){if(c==''||c=='\t'||c=='\n'){if(inspase=0){inspace=1;putchar('\n');}}else{inspace=0;putchar(c);}}}答案:=======(答案1)=======inspace=0=======(答案2)=======inspace==0=======(答案3)=======putchar(c)四、編程(37分)第1題(15.0分)題號:106/*【程序設(shè)計(jì)】功能:編寫函數(shù)fun計(jì)算下列分段函數(shù)的值:x^2+x+6x<0且x≠-3f(x)=x^2-5x+60≤x<10且x≠2及x≠3x^2-x-1其它*/#include<stdio.h>voidwwjt();floatfun(floatx){/**********Program**********//**********End**********/}main(){floatx,f;printf("inputx=");scanf("%f",&x);f=fun(x);printf("x=%f,f(x)=%f\n",x,f);wwjt();}voidwwjt(){FILE*IN,*OUT;intn;floati;floato;IN=fopen("in.dat","r");if(IN==NULL){printf("ReadFILEError");}OUT=fopen("out.dat","w");if(OUT==NULL){printf("WriteFILEError");}for(n=0;n<10;n++){fscanf(IN,"%f",&i);o=fun(i);fprintf(OUT,"%f\n",o);}fclose(IN);fclose(OUT);}答案:floaty;if(x<0&&x!=-3.0)y=x*x+x+6;elseif(x>=0&&x<10.0&&x!=2.0&&x!=3.0)y=x*x-5*x+6;elsey=x*x-x-1;returny;第2題(22.0分)題號:108/*【程序設(shè)計(jì)】功能:編寫函數(shù)fun求sum=d+dd+ddd+……+dd...d(n個d),其中d為1-9的數(shù)字。例如:3+33+333+3333+33333(此時(shí)d=3,n=5),d和n在主函數(shù)中輸入。*/#include<stdio.h>voidwwjt();longintfun(intd,intn){/**********Program**********//**********End**********/}main(){intd,n;longsum,fun();printf("d=");scanf("%d",&d);printf("n=");scanf("%d",&n);sum=fun(d,n);printf("sum=%ld\n",sum);wwjt();}voidwwjt(){FILE*IN,*OUT;intn;inti[2];longo;IN=fopen("in.dat","r");if(IN==NULL){printf("ReadFILEError");}OUT=fopen("out.dat

溫馨提示

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

評論

0/150

提交評論