C語(yǔ)言程序設(shè)計(jì)期末考試試題A_第1頁(yè)
C語(yǔ)言程序設(shè)計(jì)期末考試試題A_第2頁(yè)
C語(yǔ)言程序設(shè)計(jì)期末考試試題A_第3頁(yè)
C語(yǔ)言程序設(shè)計(jì)期末考試試題A_第4頁(yè)
C語(yǔ)言程序設(shè)計(jì)期末考試試題A_第5頁(yè)
已閱讀5頁(yè),還剩8頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、一、選擇題(每題1.5分,共計(jì)45分)1、以下敘述正確的是【 】AC語(yǔ)言程序是由過(guò)程和函數(shù)組成的BC語(yǔ)言函數(shù)可以嵌套調(diào)用,例如:fun(fun(x)CC語(yǔ)言函數(shù)不可以單獨(dú)編譯DC語(yǔ)言中除了main函數(shù),其他函數(shù)不可作為單獨(dú)文件形式存在2、以下關(guān)于C語(yǔ)言的敘述中正確的是【 】AC語(yǔ)言中的注釋不可以?shī)A在變量名或關(guān)鍵字的中間BC語(yǔ)言中的變量可以在使用之前的任何位置進(jìn)行定義C在C語(yǔ)言算術(shù)表達(dá)式的書(shū)寫(xiě)中,運(yùn)算符兩側(cè)的運(yùn)算數(shù)類(lèi)型必須一致DC語(yǔ)言的數(shù)據(jù)常量中夾帶空格不影響常量的正常使用3、以下C語(yǔ)言用戶(hù)標(biāo)識(shí)符中,不合法的是【 】A_1BAaBcCa_bDab4、若有定義:double a=22;int i=

2、0,k=18;,則不符合C語(yǔ)言規(guī)定的賦值語(yǔ)句是【 】Aa=a+,i+;Bi=(a+k)=(i+k);Ci=a%11;Di!a;5、有以下程序includemain() char a,b,c,d;scanf(“%c%c”,&a,&b);c=getchar(); d=getchar();printf(“%c%c%c%cn”,a,b,c,d);當(dāng)執(zhí)行程序時(shí),按下列方式輸入數(shù)據(jù)(從第1列開(kāi)始,代表回車(chē),注意:回車(chē)也是一個(gè)字符)1234則輸出結(jié)果是【 】A1234B12C12 3D12 346、以下關(guān)于C語(yǔ)言數(shù)據(jù)類(lèi)型使用的敘述中錯(cuò)誤的是【 】A若要準(zhǔn)確無(wú)誤差的表示自然數(shù),應(yīng)使用整數(shù)類(lèi)型B若要保存帶有多位

3、小數(shù)的數(shù)據(jù),應(yīng)使用雙精度類(lèi)型C若要處理如“人員信息”等含有不同類(lèi)型的相關(guān)數(shù)據(jù),應(yīng)自定義結(jié)構(gòu)體類(lèi)型D若只處理“真”和“假”兩種邏輯值,應(yīng)使用邏輯類(lèi)型7、若a是數(shù)值類(lèi)型,則邏輯表達(dá)式(a= =1)|(a!=1)的值是【 】A1B0C2D不知道a的值,不能確定8、以下選項(xiàng)中與if(a= =1)a=b; else a+; 語(yǔ)句功能不同的switch語(yǔ)句是【 】Aswitch(a)case:a=b;break;default:a+;Bswitch(a= =1)case 0:a=b;break;case 1:a+;Cswitch(a)default:a+;break;case 1:a=b;Dswitch(

4、a= =1)case 1 : a=b;break;case 0 : a+;9、有如下嵌套的if語(yǔ)句if (ab)if(ac) k=a;else k=c;elseif(bc) k=b;else k=c;以下選項(xiàng)中與上述if語(yǔ)句等價(jià)的語(yǔ)句是【 】 Ak(ab)?a:b; k(bc)?b:c;Bk(ab)?(bc)?a:b:(bc)?b:c);Ck(ab)?(ac)?a:c):(be)?b:c);Dk(ab)?a:b; k=(ac)?a:c;10、有以下程序includestdio.hmain()in i,j,m=1;for(i=1;i3;i+)for(j=3;jO;j-)if(i*j)3)brea

5、k;m=i*j;printf(m=%dn,m);程序運(yùn)行后的輸出結(jié)果是【 】Am=6Bm=2Cm=4Dm=511、有以下程序include(stdio.hmain()int al;b2;for(;a8;a+) b+=a;a+=2;printf(%d,%dn,a,b);程序運(yùn)行后的輸出結(jié)果是【 】A9,18B8,11C7,11D10,1412、有以下程序,其中k的初值為八進(jìn)制數(shù)#include main()int k011;printf(%dn,k+);程序運(yùn)行后的輸出結(jié)果是【 】A12B11C10D913、下列語(yǔ)句組中,正確的是【 】Achar *s;s=Olympic;Bchar s7;s=

6、Olympic;Cchar *s;s=Olympic;Dchar s7;s=Olympic;14、以下關(guān)于return語(yǔ)句的敘述中正確的是【 】A一個(gè)自定義函數(shù)中必須有一條return語(yǔ)句B一個(gè)自定義函數(shù)中可以根據(jù)不同情況設(shè)置多條return語(yǔ)句C定義成void類(lèi)型的函數(shù)中可以有帶返回值的return語(yǔ)句D沒(méi)有return語(yǔ)句的自定義函數(shù)在執(zhí)行結(jié)束時(shí)不能返回到調(diào)用處15、下列選項(xiàng)中,能正確定義數(shù)組的語(yǔ)句是【 】Aint num0.2008;Bint num;Cint N=2008; int numN;D#define N 2008 int numN;16、有以下程序#include void

7、fun(char *c,int d)*c=*c+1;d=d+1;printf(%c,%c,*c,d);main()char b=a,a=A;fun(&b,a);printf(%c,%cn,b,a);程序運(yùn)行后的輸出結(jié)果是【 】Ab,B,b,ABb,B,B,ACa,B,B,aDa,B,a,B17、若有定義int(*Pt)3;,則下列說(shuō)法正確的是【 】A定義了基類(lèi)型為int的三個(gè)指針變量B定義了基類(lèi)型為int的具有三個(gè)元素的指針數(shù)組ptC定義了一個(gè)名為*pt、具有三個(gè)元素的整型數(shù)組D定義了一個(gè)名為pt的指針變量,它可以指向每行有三個(gè)整數(shù)元素的二維數(shù)組18、設(shè)有定義double a10,*s=a;,

8、以下能夠代表數(shù)組元素a3的是【 】A(*s)3B*(s+3)C*s3D*s+319、有以下程序include(stdio.h)main()int a5=1,2,3,4,5,b5O,2,1,3,0,i,s0;for(i0;i5;i+) ss+abi);printf(%dn, s);程序運(yùn)行后的輸出結(jié)果是【 】A6B10C11D1520、有以下程序include main()int b 33=O,1,2,0,1,2,O,1,2,i,j,t=1;for(i=0;i3;i+)for(j=ij=1;j+) t+=bibji;printf(%dn,t);程序運(yùn)行后的輸出結(jié)果是【 】A1B3C4D921、若

9、有以下定義和語(yǔ)句char s110=abcd!,*s2=n123;printf(%d %dn, strlen(s1),strlen(s2);則輸出結(jié)果是【 】A5 5B10 5C10 7D5 822、有以下程序#include #define N 8void fun(int *x,int i)*x=*(xi);main()int aN=1,2,3,4,5,6,7,8,i;fun(a,2);for(i=O;iN2;i+)printf(%d,ai);printf(n);程序運(yùn)行后的輸出結(jié)果是【 】A1313B2234C3234D123423、有以下程序#include int f(int t ,i

10、nt n);main int a4=1,2,3,4,s;s=f(a,4); printf(%dn,s);int f(int t ,int n) if(n0) return tn-1+f(t,n-1);else return 0;程序運(yùn)行后的輸出結(jié)果是【 】A4B1OC14D624、有以下程序#include int fun() static int x=1;x*2; return x;main()int i,s=1,for(i=1;i=2;i+) s=fun();printf(%dn,s);程序運(yùn)行后的輸出結(jié)果是【 】AOB1C4D825、有以下程序#include #define SUB(a

11、) (a)-(a)main() int a=2,b=3,c=5,d;d=SUB(a+b) *c;printf(%dn,d);程序運(yùn)行后的輸出結(jié)果是【 】A0B-12C-20D1026、設(shè)有定義:struct complex int real,unreal; data1=1,8,data2;則以下賦值語(yǔ)句中錯(cuò)誤的是【 】Adata2=data1;Bdata2=(2,6);Cdata2.real=data1.real;Ddata2.real=data1.unreal;27、有以下程序#include #include struct A int a; char b10; double c;void

12、f(struct A t);main() struct A a=1001,ZhangDa,1098.0;f(a); printf(%d,%s,%6.1fn,a.a,a.b,a.c);void f(struct A t) t.a=1002; strcpy(t.b,ChangRong);t.c=1202.0;程序運(yùn)行后的輸出結(jié)果是【 】A1001,zhangDa,1098.0B1002,changRong,1202.0C1001,ehangRong,1098.OD1002,ZhangDa,1202.0 28、有以下定義和語(yǔ)句struct workers int num;char name20;ch

13、ar c;structint day; int month; int year; s;struct workers w,*pw;pw&w;能給w中year成員賦1980的語(yǔ)句是【 】A*pw.year198O;Bw.year=1980;Cpw-year=1980;Dw.s.year=1980;29、有以下程序#include main() int a=2,b=2,c=2;printf(%dn,a/b&C;程序運(yùn)行后的輸出結(jié)果是【 】AOB1C2D330、有以下程序#include main() FILE *fp;char str10;fp=fopen(myfile.dat,w);fputs(a

14、bc,fp);fclose(fp);fpfopen(myfile.data,a+);fprintf(fp,%d,28);rewind(fp);fscanf(fp,%s,str); puts(str);fclose(fp);程序運(yùn)行后的輸出結(jié)果是【 】AabcB 28cC abc28D因類(lèi)型不一致而出錯(cuò)二、填空題(每空2分,共30分)1、設(shè)x為int型變量,請(qǐng)寫(xiě)出一個(gè)關(guān)系表達(dá)式_,用以判斷x同時(shí)為3和7的倍數(shù)時(shí),關(guān)系表達(dá)式的值為真。 2、有以下程序#include main() int a=1,b=2,c=3,d=0;if(a=1)if(b!=2)if(c=3) d=1;else d=2;els

15、e if(c!=3) d=3;else d=4;else d=5;printf(“%dn”,d);程序運(yùn)行后的輸出結(jié)果是_。3、有以下程序#include main() int m,n;scanf(%d%d,&m,&n);while(m!=n) while(mn) m=m-n;while(mn) n=n-m;printf(“%dn”,m);程序運(yùn)行后,當(dāng)輸入14 63 時(shí),輸出結(jié)果是_。4、有以下程序#include main() int i,j,a3=1,2,3,4,5,6,7,8,9;for(i=0;i3;i+)for(j=i;j3;j+) printf(“%d%,aij);printf(

16、n);程序運(yùn)行后的輸出結(jié)果是_。 5、有以下程序#include main() int a=1,2,3,4,5,6,*k3,i=0;while(i3) ki=&a2*i;printf(%d,*ki);i+;程序運(yùn)行后的輸出結(jié)果是_。6、有以下程序#include main() int a33=1,2,3,4,5,6,7,8,9;int b3=0,i;for(i=0;i3;i+) bi=ai2+a2i;for(i=0;i3;i+) printf(%d,bi);printf(n);程序運(yùn)行后的輸出結(jié)果是_。7、有以下程序#include #include void fun(char *str) c

17、har temp;int n,i;n=strlen(str);temp=strn-1;for(i=n-1;i0;i-) stri=stri-1;str0=temp;main() char s50;scanf(%s,s); fun(s); printf(%sn,s);程序運(yùn)行后輸入:abcdef,則輸出結(jié)果是_。 8、以下程序的功能是:將值為三位正整數(shù)的變量x中的數(shù)值按照個(gè)位、十位、百位的順序拆分并輸出。請(qǐng)?zhí)羁铡?#include main() int x=256;printf(%d-%d-%dn,_ ,x/10%10,x/100); 9、以下程序用以刪除字符串所有的空格,請(qǐng)?zhí)羁铡?includ

18、e main() char s100=Our teacher teach C language!;int i,j;for(i=j=0;si!=0;i+)if(si!= ) sj=si;j+;sj= _printf(“%sn”,s); 10以下程序的功能是:借助指針變量找出數(shù)組元素中的最大值及其元素的下標(biāo)值。請(qǐng)?zhí)羁铡?include main() int a10,*p,*s;for(p=a;p-a10;p+) scanf(%d,p);for(p=a,s=a;p-a*s) s=_; printf(“index=%dn”,s-a); 三、程序改錯(cuò)題(10分)下列給定程序中,函數(shù)proc的功能是:先從

19、鍵盤(pán)輸入一個(gè)3行3列的矩陣各個(gè)元素的值,然后輸出主對(duì)角線(xiàn)元素之積,請(qǐng)修函數(shù)proc中的錯(cuò)誤使其能得出正確的結(jié)果。注意不要修改主函數(shù),不要增刪程序行或更改程序的結(jié)構(gòu)。#include void proc() int arr33,mul; int i,j; mul=1; printf( please input an 3*3 array:n); for (i=0;i3;i+) /*第一處錯(cuò)誤區(qū)*/ for (i=0;j3;j+) scanf(%d,&arrii); for(i=0;i3;i+)/*第二處錯(cuò)誤區(qū)*/ mul=mul*arrij; printf(Mul=%dn,mul);void main() proc();四

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論