九九热最新网址,777奇米四色米奇影院在线播放,国产精品18久久久久久久久久,中文有码视频,亚洲一区在线免费观看,国产91精品在线,婷婷丁香六月天

河南理工大學 歷年C語言試卷

上傳人:二*** 文檔編號:57233410 上傳時間:2022-02-23 格式:DOCX 頁數(shù):36 大?。?07.28KB
收藏 版權申訴 舉報 下載
河南理工大學 歷年C語言試卷_第1頁
第1頁 / 共36頁
河南理工大學 歷年C語言試卷_第2頁
第2頁 / 共36頁
河南理工大學 歷年C語言試卷_第3頁
第3頁 / 共36頁

下載文檔到電腦,查找使用更方便

16 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《河南理工大學 歷年C語言試卷》由會員分享,可在線閱讀,更多相關《河南理工大學 歷年C語言試卷(36頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、河南理工大學 2004~2005 學年第 2 學期 《c語言程序設計》 試卷(A卷) 考試方式:閉卷 本試卷考試分數(shù)占學生總評成績的 70 % 總 分 題號 一 二 三 四 核分人 題分 專業(yè)班級: 姓名: 學號: …………………………密………………………………封………………………………線………………………… 一、單項選擇題(每題2分,共50分) 在每小題列出的四個選項中只有一個

2、選項是符合題目要求的,請將正確選項前的字母填在題后的下劃線“ ”上。 1.以下敘述正確的是 A)C程序中,main函數(shù)必須位于程序的最前面 B)C程序的每一行只能寫一條語句 C)C語言本身沒有輸入輸出語句 D)對C程序進行編譯的過程中,可以發(fā)現(xiàn)注釋中的拼寫錯誤 2.以下選項中均是合法的用戶標識符是 A)A B) _123 C)3Dmax D) A.dat P_0 temp p-pointer la0 do INT _print int 3.在C

3、語言中,字符型(char)數(shù)據(jù)在內(nèi)存中存放的形式為 A)BCD碼 B)原碼 C)補碼 D)ASCII碼 4.已知char a;int b;float c;double d;執(zhí)行語句c=a+b+c+d;后,變量c 的數(shù)據(jù)類型是 A)int B)char C)float D)double 5.已知int i,a;執(zhí)行語句i=(a=2*3,a*5),a+6;后,變量i的值是 A)36 B)30 C)12

4、 D)6 6.若int x=3;且有下面的程序片斷,則輸出結果是 A)1 B)3 0 C)1 -2 D)死循環(huán) do { printf("%d ",x-=2); }while(!(--x)); 7.字符串"\\\22a,0\n"的長度是 A)8 B)7 C)6 D)5 8.若w=1,x=2,y=3,z=4;則條件表達式w>x?w:y

5、 C)2 D)1 9.當執(zhí)行下面程序時,如果輸入ABC,則輸出的結果是 #include main() { char ss[10]= "12345"; gets(ss); strcat(ss,"6789"); printf("%s\n",ss); } A)ABC6789 B)ABC67 C)12345ABC6 D)ABC456789 10.設有說明語句int a=1,b=0;則執(zhí)行以下語句后,輸出結果是

6、A)**0** B)**0****2** C)**0****1****2** D)有語法錯誤 switch(a) { case 1: switch(b) { case 0: printf("**0**"); break; case 1: printf("**1**"); break; } case 2: printf("**2**"); break; } 11.以下不是死循環(huán)的語句是 A)for(;;x+=i); B)while(1){x++;} C)

7、for(i=10;;i--) D)for(;(c=getchar())!='\n';) sum+=i; printf("%c",c); 12.下列程序的輸出結果是 A)13;1 B)14;4 C)11;1 D)10;0 main() { int a=10, b=0; if(a=12) { a=a+1; b=b+1; }else { a=a+4;b=b+4; }

8、 printf("%d,%d\n",a,b); } 13.下面關于字符串的說明中,錯誤的是 A)char str[7]="FORTRAN"; B)char str[]="FORTRAN"; C)char *str="FORTRAN"; D)char str[]={'F','O','R','T','R','A','N'} 14.已知:int a[10];則對a數(shù)組元素的正確引用是 A)a[10] B)a[3.5] C)a(5) D)a[10-10] 15.在C語言中

9、 A)不能使用do-while語句構成的循環(huán) B)do-while語句構成的循環(huán)必須用break語句才能退出 C)do-while語句構成的循環(huán),當while語句中的表達式值為非零時結束循環(huán) D)do-while語句構成的循環(huán),當while語句中的表達式值為零時結束循環(huán) 16.下列程序的輸出結果是 A)13 B)15 C)11 D)12 #define FUDGE(y) 1.2+y #define PR(a) printf("%d",(int)(a)) main() { in

10、t x=2; PR(FUDGE(5)*x); } 17.C語言中的函數(shù) A)可以嵌套定義 B)不可以嵌套調(diào)用 C)可以嵌套調(diào)用,但不能遞歸調(diào)用 D)嵌套調(diào)用和遞歸調(diào)用均可 18.若x和y代表整型數(shù),以下表達式中不能正確表示數(shù)學關系|x-y|<10的是 A) abs(x-y)<10?? B) x-y>-10&& x-y<10 C) @(x-y)<-10||!(y-x)>10?? D) (x-y)*(x-y)<100 19.已知int a[4][3]={1,2,3,4,5,6,7,8

11、,9,10,11,12};int (*ptr)[3]=a,*p=a[0]; 則以下不能夠正確表示數(shù)組元素a[1][2]的表達式是 A)*((ptr+1)[2] ) B)*(*(p+5)) C)(*ptr+1)+2 D)*(*(a+1)+2) 20.以下函數(shù)的功能是? void fun(char?*p2,?char?*p1) { ?while((*p2=*p1)!='\0') { ?p1++;p2++;? }? } A)將p1所指字符串復制到p2所指內(nèi)存空間 B)將p1所指字符串的地址賦給指針p2 C

12、)對p1和p2兩個指針所指字符串進行比較 D)檢查p1和p2兩個指針所指字符串中是否有'\0' 21.寫字符到磁盤文件的fputc(ch,fp)函數(shù)(ch表示字符,fp表示文件指針),其函數(shù)原型(頭)正確的是 A) FILE *fputc(char) B) int fputc(FILE *) C) int fputc(char, FILE *) D) int fputc(FILE *,char) 22. 設有如下定義: struct sk { int a;float b; }data,*p; 若有p=&data;,則對data中的a域的正確引

13、用是 A)(*p).data.a B)(*p).a C)p->data.a D)p.data.a 23.已知函數(shù)原型為: struct tree *func(int x1,int *x2,struct tree x3,struct tree *x4) 其中 tree 為已定義過的結構,且有下列變量定義: struct tree pt,*p; int i; 請選擇正確的函數(shù)調(diào)用語句 A) &pt=func(10,&i,pt,p) B) p=func(i++,&i,pt,&pt); C) p=func(i+1,&(i+

14、2),*p,p); D) func(i+1,&i,p,p); 24.下列程序的輸出結果是 A)AB B)BA C)AA D)BB void sub(char *a, char *b) { char c; c=*a; *a=*b; *b=c; } main() { char a, b; a='A'; b='B'; sub(a,b); printf("%c%c\n", a,b); } 25. 在Turbo C集成環(huán)境中,若一個源程序輸入

15、后沒有錯誤,則按Ctrl+F9后 A)將源程序存到當前目錄 B)依次產(chǎn)生.OBJ和.EXE文件,但不運行程序 C)依次產(chǎn)生.EXE和.OBJ文件,并運行程序 D)依次產(chǎn)生.OBJ和.EXE文件,并運行程序 得分 評卷人 二、程序填空題(每空2分,共20分)下面給出了若干個程序,請按照題意將下劃線處缺少的部分補上,使其能正確運行。 26.以下程序統(tǒng)計從終端輸入的字符中每個大寫字母的個數(shù)。用#號作為輸入結束標志,請?zhí)羁铡? main( ) { int num[26],i; char c; for(i=0; i<26; i++) num[i]=0;

16、 while( !='#') /*統(tǒng)計從終端輸入的大寫字母個數(shù)*/ if(c>=’A’&& c<=’Z’) num[c-65]+=1;/* ’A’的ASCII是65*/ for(i=0; i<26; i++) /*輸出大寫字母和該字母的個數(shù)*/ if(num[i]) printf("%c:%d\n",i , num[i]); } 27.將n個字符串按字母順序(由小到大)排序。 void sort(char *str[],int n) { char *t; int i,j,k; for(i=0; i

17、i++) { ; for(j=i+1; j0) ; if(k!=i) { t=str[i]; str[i]=str[k]; str[k]=t; } } } 28.以下程序的功能是將字符串s中的數(shù)字字符放入d數(shù)組中,最后輸出d中的字符 串。例如,輸入字符串:abc123edf456gh,執(zhí)行程序后輸出:123456。請?zhí)羁铡? #include?<

18、ctype.h> main() {? char?s[80],?d[80];?int?i,j; gets(s); for(i=j=0; s[i]!='\0'; i++) if( )?{? d[j]=s[i];? j++;? } ; puts(d); } 29.以下fun函數(shù)的功能是將一個字符串的內(nèi)容顛倒過來,如:int str[ ]="12345",則調(diào)用該函數(shù)后,str數(shù)組中的內(nèi)容變?yōu)椋?5432

19、1"。請?zhí)羁铡? #include "string.h" void fun(int str[ ]) { int i,j,k; for(i=0,j= ; i

20、ing1:”); scanf(“%s”,s1); printf(“\nInput string2:”); scanf(“%s”,s2); while(s1[i]!=’\0’) ; while(s2[j]!=’\0’) ; s1[i]=’\0’; printf(“The new string is %s\n”,s1); } 得分 評卷人 三、修改下列程序的錯誤(共5處,每處3分,共15分) 請改正下列程序中的錯誤,使之能得出正確的

21、結果。 注意:不得增行或減行,也不得更改程序的結構。 31.給定程序中函數(shù)fun的功能 是:計算n!。 例如:給n輸入5,則輸出120.000000。請改正程序中的錯誤,使它能得出正確的結果。 #include /*********found*********/ double fun(int *n) { double result=1.0; if( n==0 || n==1) return 1.0; while(n>1) /**********found**********/ resul

22、t*=--n; return result; } main() { int n; scanf("%d",&n); printf("\n\n%d!=%lf\n\n",n,fun(n)); } 32.下述程序中函數(shù)calc的功能是對傳送過來的兩個實數(shù)求出和值與差值,并通過兩個指針形參分別將這兩個值傳送回調(diào)用函數(shù)。 ? void calc(float x,float y,float *add,float *sub) ? {??? *add=x+y; /**********found*********/ sub=x-y; ?? } ?? m

23、ain() ?? {? float x,y,add,sub; ???? printf("Enter x,y:"); ???? /**********found*********/ scanf("%f%f",x,y); ???? /**********found*********/ calc(&x,&y,add,sub); ???? printf("x+y=%f,x-y=%f\n",add,sub); } 得分 評卷人 四、程序設計(共2題,第一題5分,第二題10分,共15分) 33.輸入三個整數(shù),求其中的最大值并輸出。(5分) 3

24、4.下面的程序是求數(shù)組中的最小元素,輸出最小元素的下標及最小元素值。 注意:部分源程序已給出。請勿改動主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)findmin的花括號中填入你編寫的若干語句。 #include int findmin(int *s,int n) /* s表示數(shù)組的首地址,n是數(shù)組大小 */ ? { } ? main() { int a[10],i,k; ??? for (i=0; i<10; i++) ????? scanf("%d",&a[i]); ??? k=findmi

25、n(a,10); printf("%d,%d\n",k,a[k]); } 河南理工大學 2004~2005 學年第 2 學期 專業(yè)班級: 姓名: 學號: …………………………密………………………………封………………………………線………………………… 《c語言程序設計》 試卷(B卷) 考試方式:閉卷 本試卷考試分數(shù)占學生總評成績的 70 % 總 分 題號 一 二 三 四 核分人 題分 復

26、查人 得分 評卷人 一、單項選擇題(每題2分,共50分) 在每小題列出的四個選項中只有一個選項是符合題目要求的,請將正確選項前的字母填在題后的下劃線“ ”上。 1.以下非法的賦值語句是 A) n=(i=2,++i); B) j++; C) ++(i+1); D) x=j>0; 2.下列符號串中,合法的C語言標識將是 A) _235    B) 235_    C) a.235    D) #121 3.設有int x=8,y,z;,則執(zhí)行“y=

27、z=x++,x=y==z;”后,變量x的值是 A)0?????? B)1????? C)8?????? ? D)9 4.以下選項中均是合法的用戶標識符是 A)A B) _123 C)3Dmax D) A.dat P_0 temp p-pointer la0 do INT _print int 5.設float a;,并且a已賦值,則能將a的值四舍五入保留兩位小數(shù)的選項是 A)a=(a*100+0.5)/1

28、00; B)a=(int)(a*100+0.5)/100.0; C)a=(int)(a*100+0.5)/100; D)a=(int)(a*100)/100+0.5; 6.在以下數(shù)組定義中,正確的是 A)int a[3+3]; B)int a[3,3]; C)int a[]; D)int a[3][]; 7.設有int a=1,b=1;,執(zhí)行printf("%d,%d",(a++,--b),b-1);的輸出結果是 A)1,-1???? B)1,0????? C)0,-1?????? D)0,0

29、8.以下程序的輸出結果是 A)0,0,6 B)1,0,7 C)1,1,7 D)0,1,7 main( ) { int i=0,j=0,k=6; if ((++i>0) || (++j>0)) k++; printf("%d, %d , %d \n",i,j,k); } 9.有以下程序: int fff(int a) { int b=0; static int c=3; b=b+1; c=c+1; return(a+b+c); } main() { int a=2,i;

30、 for(i=0; i<3; i++) printf("%d ",fff(a)); } 執(zhí)行后輸出結果是 A)7 9 11 B)7 8 9 C)7 7 7 D)7 9 10 10.字符串"m\x43\\\np\102q"的長度是 ? A)7????? B)9??? C)15??? D)16 11.計算平方數(shù)時不可能引起二義性的宏定義是 A)#define SOR(x) x*x?????? B)#define SQR(x) (x)*(x) C)#define SQR(x) (x*x)???

31、D)# define SQR(x) ((x)*(x)) 12.執(zhí)行下述程序的輸出結果是 ? #include ? main() ? {????? static int i,j; ????? for (j=9;i=j-1) ????? printf("%d\n",j); } } A)11??? B)10??? C)9???? D)1011 13.函數(shù)調(diào)用時,下列說法中不正確

32、的是 A)在傳遞數(shù)值時,形式參數(shù)不予分配內(nèi)存 B)實際參數(shù)和形式參數(shù)可以同名 C)主調(diào)函數(shù)和被調(diào)用函數(shù)可以不在同一個文件中 D)函數(shù)間傳送數(shù)據(jù)可以使用外部全局變量 14.函數(shù)原型是void fun(int *a,int *b),且int x[10],y;,則下列調(diào)用中正確的是 A)fun(*x,&y); B)fun(&x,*y); C)fun(x,y); D)fun(x,&y); 15.已知指針變量p、q分別指向圖中所示結點,則下列語句組中,可將p所指向的結點指向q所指向的結點的語句是 數(shù)據(jù)類型: str

33、uct typ { int data; struct typ *next; }; A)p->next=q;????????????B)p->next=q.next; ??? C)p=q;???????????????? D) p=q->data; 16.設有int a[]={2,4,6,8,10},*p=a;,則值為8的表達式是 A)*p+3?????? B)*p+4????????? C)*(p+4)?????? D)*(a+3) 17.若有int a[4][3]={{1,2,3},{4,5,6},{7,8,9},{10,11,12}},(*

34、p)[3]; p=a; 則*(*(p+1)+2)的值是 A) 5 B) 6 C) 7 D) 有語法錯誤 18.執(zhí)行下面程序段后,c的二進制值為 ? int a=3,b=6; ? char c; ?? c=(a^b)<<2; A)00011100??? B)00000111??? C)00000001??? D)00010100 19.設有int a[3][4],*p=a[1];,則指針變量p指向的元素是 A)a[1][0] B)a[0]

35、[1] C)a[1][1] D)a[1][3] 20.以“只讀”方式打開文本文件a:\aa.dat,下列語句中哪一個是正確的 A)fp=fopen("a:\\aa.dat","ab"); B)fp=fopen("a:\aa.dat","a"); C)fp=fopen("a:\aa.dat","wb"); D)fp=fopen("a:\\aa.dat","r"); 21.若要執(zhí)行p=fopen("a1", "r"); 則p必須事先進行定義 A)int p; B)int *p;

36、C)FILE p; D)FILE *p; 22. 在Turbo C環(huán)境下,已完成一個C源文件編輯后,則下列正確的敘述是 A)先連接,再編譯可生成.EXE文件 B)先編譯,再連接可生成.EXE文件 C)先編譯,再連接、編譯可生成.EXE文件 D)生成的.EXE文件不能在DOS下運行 23.在下面選項中,指出一個源程序有兩個main()函數(shù)的出錯信息是 A)Undefined symbol 'a' in function main B)Code has no effct in function main C)Redecla

37、ration of 'main' D)Statement missing ; in function main 24.在下列選項中,沒有構成死循環(huán)的程序段是 A) int i=100; B) for( ; ;); C) int k=10000; D) int s=36; while(1) do{++k;} while(s);--s; { i=i%100+1; while(k>=10000); if

38、(i>100)break; } 25. 設有char string1[20]="ABCDE",string2[10]="xyz";,則執(zhí)行printf("%d",strlen(strcat(string1,string2)));后的輸出結果是 ? A)9??? B)8?? ? C)5? ?? D)3 得分 評卷人 二、程序填空題(每空2分,共20分)下面給出了若干個程序,請按照題意將下劃線處缺少的部分補上,使其能正確運行。 26.下面函數(shù)的功能是返回形參p所指向的、長度為n的整型數(shù)組中最小值所在的下標(下標從0開始計算)。

39、int fun(int *p,int n) { int i,j=0; ????? for(i=0;i<n;i++) ????? if(p[i]<p[j]) _______________ return(________); } 27.將數(shù)組中的n個數(shù)據(jù)按逆序存放。 void reverse(int a[],int n) { int i,j,t; i=0; j= ; while(i

40、} 28.以下程序用遞歸法求解,當最后一項的值小于0.00001時,累加結束。 main() { double s,x; double sum(double,double,double *); scanf("%lf",&x); s=1.0; if(x>1.0) { printf("s=%10.5lf\n",sum(1.0,x,&s); ) else printf("data error!\n"); } double sum(double t,double p, ) { t=t/p;

41、 if(t>=0.00001) sum(t,p,a); *a+= ; return(*a); } 29.以下程序是將字符串a(chǎn)復制為字符串b,請將程序補充完整。 main() { char a[]="I am a boy.",b[20],*p1,*p2; p1=a; p2=b; while( ) { *p2=*p1; p1++,p2++; } ; printf("string a is:%s\n",a); printf(

42、"string b is:%s\n",b); } 30.將n個字符串按字母順序(由小到大)排序。 void sort(char *str[],int n) { char *t; int i,j,k; for(i=0; i0) ; if(k!=i) { t=str[i]; str[i]str[k]; str[k]=t;

43、 } } } 得分 評卷人 三、修改下列程序的錯誤(共5處,每處3分,共15分) 請改正下列程序中的錯誤,使之能得出正確的結果。 注意:不得增行或減行,也不得更改程序的結構。 31.給定程序中功能是:從鍵盤上輸入2個整數(shù),按從小到大的順序輸出這2個數(shù)。 /******found*******/ fun(int x, int y) { int temp; temp=*x;*x=*y; * y=temp; } main() { int a,b; /*******found******/ scanf("%d

44、,%d",&a,&b); if(a

45、 found ******/ m=100*k+10*j+i; if(m==i*i*i+j*j*j+k*k*k) printf("%d ",m); } } 得分 評卷人 四、程序設計(共2題,第一題5分,第二題10分,共15分) 33.用多分支語句實現(xiàn)下列功能:從鍵盤上輸入a op b(其中a,b為數(shù)值,op僅為字符+、 -、*、 / ),計算表達式a op b并輸出結果。例如輸入3+5〈回車〉,則輸出8(5分)。 34.主函數(shù)輸入50個學生的學號、姓名、3門課程的成績存入一個結構型的數(shù)組,編寫函數(shù)統(tǒng)計每個學生的總分,在主函數(shù)中輸出學生的

46、學號、姓名、總分(10分)。 struct student { int num; char name[20]; float score[3]; float sum; /* 總分 */ }; void total(struct student *p,int n) { } main() { struct student stu[50]; int i; for(i=0; i<50; i++) { scanf("%d",&stu[i].num); gets(stu[i].name); scanf("%f",&s

47、tu[i].score[0]); scanf("%f",&stu[i].score[1]); scanf("%f",&stu[i].score[2]); } total(stu,50); for(i=0; i<50; i++) printf("%d %s %f\n",stu[i].num,stu[i].name,stu[i].sum); } 焦作工學院 2004~2005 學年第 2 學期 高級語言程序設計 試卷(A卷) 標準答案及評分標準 一、單項選擇題(每題2分,共50分) 1.C 2.B

48、 3.D 4.C 5.B 6.C 7.C 8.B 9.A 10.B 11.D 12.A 13.A/D 14.D 15.D 16.C 17.D 18.C 19.D 20. A 21.C 22.B 23.B 24.B 25.D 二、程序填空題(每空2分,共20分) 26.c=getchar() /* 字母拼寫錯或缺少字母不扣分 */

49、 +65或+'A' 27.k=i k=j 28.s[i]<='9' && s[i]>='0' /* 數(shù)字未加單撇不扣分 */ d[i]='\0' 或d[i]=0 29.strlen(str)-1 /* 沒有減1扣1分 */ j-- 30.i++ s1[i++]=s2[j++] 或 s1[i]=s2[j];i++;j++ 三、修改程序題(共有5處錯誤,每處3分,共15分) 31.double fun(int n) result*=n-- 32.*sub=x-y scanf("%f%f",&x,&y) /* 改對一個得1分,多改但未改錯不扣

50、分 */ calc(x,y,&add,&sub) /* 改對一個得1分,得夠3分為止 */ 四、程序設計題(共2題,第一題5分,第二題10分,共15分) 注意:編程方法不唯一,以下為參考答案。另外,主要測試編程方法,語法錯誤在不影響閱讀情況下可不扣分,如少寫分號。 33. 方法一: main() { int a,b,c,d,max; scanf("%d,%d,%d",&a,&b,&c); /* 輸入1分 */ d=a>b?a:b; /* 比較占3分 */ max=d>c?d:c; print

51、f("%d\n",max); /* 輸出1分 */ } 方法二: main() { int a, b, c ; scanf("%d,%d,%d",&a,&b,&c); printf("%d\n",a>b?a>c?a:c:b>c?b:c); } 方法三:使用if語句 main() { int a,b,c,d,max; scanf("%d,%d,%d",&a,&b,&c); max=a; if(b>max) max=b; if(c>max) max=c;

52、 printf("%d\n",max); } 34. 方法一: int isprime(int n) { int k,i; k=sqrt(n); /* 寫成sqr不扣分 */ for(i=2; i<=k; i++) /* 8分*/ if(n%i==0) break; if(i>k) return 1; /* 返回值 2分 */ else return 0; } 方法二: int isprime(int n) { int i; for(i=2; i

53、%i==0) break; if(i>=n) return 1; /* 寫成i≥n不扣分,主要測試編程方法 */ else return 0; } 焦作工學院 2004~2005 學年第 2 學期 高級語言程序設計 試卷(B卷) 標準答案及評分標準 一、單項選擇題(每題2分,共50分) 1、C 2、A 3、B 4、B 5、B 6、A 7、D 8、B 9、B 10、A 11、D 12、C 13、A 14、D 15、A 16、D 17、B 18、D 19、A 20、

54、D 21、D 22、B 23、C 24、C 25、B 二、程序填空題(每空2分,共20分) 26、 j=i; j 27、n-1 j-- 28、double *a t 29、*p1!='\0' *p2='\0' 30、k=i k=j 三、修改程序題(共有5處錯誤,每處3分,共15分) 31、fun(int *x,int *y) if(a>b) fun(&a,&b); 32、j<=9 m=100*i+10*j+k 四、程序設計題(共2題,第一題5分,第二題10分,共15分) 注

55、意:編程方法不唯一,以下為參考答案。另外,主要測試編程方法,語法錯誤在不影響閱讀情況下可不扣分,如少寫分號。 33、main() { int a,b; char s; printf("input a op b:"); scanf("%d %c %d",&a,&s,&b); switch(s) { case '+' : printf("%d",a+b);break; case '-' : printf("%d",a-b);break; case '*' : printf("%d",a*b);break; case '/' : pr

56、intf("%d",a/b);break; default :break; } } 34、void total(struct student *p,int n) { int i,j; for(i=0; isum=0.0; for(j=0;j<3;j++) p->sum +=p->score[j];} } 河南理工大學 2005~2006 學年第 2 學期 專業(yè)班級: 姓名:

57、學號: …………………………密………………………………封………………………………線………………………… 《C語言程序設計》 試卷(A卷) 考試方式:閉卷 本試卷考試分數(shù)占學生總評成績的 70 % 總 分 題號 一 二 三 四 核分人 題分 復查人 得分 評卷人 一、單項選擇題(每題2分,共50分) 在每小題列出的四個選項中只有一個選項是符合題目要求的,請將正確選項前的字母填在題后的下劃線“ ”上。 1.根據(jù)C語言的特點以下選項中不

58、正確的選項是 B A)習慣用小寫字母,大小寫字母有區(qū)別。 B)C語言主要由語句構成,語句是C程序的基本單位。 C)C語言本身沒有輸入輸出語句。 D)用C語言寫的程序可移植性好。 2.C語言中運算對象必須是整型數(shù)據(jù)的運算符是 A A)% B)/ C)! D)&& 3.若變量已正確定義并賦值,符合C語言語法的表達式正確的是 B A)a=a+7; B)a=7+b+c,a++ C)int(12.3%4) D)a=a+7=c+b 4.下列可以正確表示字符型常量的是 B

59、A)"a" B)'\t' C)'\028' D)'xy' 5.已知int x=1,y=2,z;執(zhí)行語句z=x>y?++x:++y;后,z的值是 C A)1 B)2 C)3 D)4 6.若變量已正確定義,要將a和b中的數(shù)據(jù)進行交換,下面選項中不正確的是 C A)a=a+b,b=a-b,a=a-b; B)t=a,a=b,b=t; C)a=t;t=b;b=a; D)t=b;b=a;a=t; 7.已知int x=6;則執(zhí)行x

60、+=x-=x*x;語句后,x的值為 B A)36 B)-60 C)60 D)-24 8.以下程序的輸出結果是 C A)0 B)1 C)2 D)3 main() { int a=2,b=-1,c=2; if(a

61、語句后,a,b,c的值分別為 B A)2,2,1 B)2,1,1 C)2,2,2 D)2,1,2 10.若變量已正確定義,以下語句的輸出結果是 A A)%# B)*%$ C)% D)%$* x=0;y=2;z=3; switch(x) { case 0:switch(y) { case 1: printf("*");break; case 2: printf("%");break; } case 1: switch(z

62、) { case 1: printf("$"); case 2: printf("*");break; default: printf("#"); } } 11.若有以下宏定義 #define N 2 #define Y(n) ((N+1)*n) 則執(zhí)行語句z=2*(N+Y(5));后的結果為 B A)語句有錯誤 B)z=34 C)z=70 D)z值不確定 12.以下不是死循環(huán)的語句為

63、 D A)for(;;x+=i); B)while(1){x++;} C)for(i=10;;i--)sum+=i D)for(;(c=getchar())!='\n';)printf("%c",c); 13.以下程序段的輸出結果是D A)9 B)1 C)11 D)10 int k,j,s; for(k=2; k<6;k++,k++) { s=1; for(j=k;j<6;j++) s+=j; } printf("%d\n",s); 14.已知:int a[3][

64、4];則對數(shù)組元素引用正確的是 C A) a[2][4] B)a[1,3] C)a[1+1][0] D)a(2)(1) 15.已知:char str[]="ab\n\018\\\"";則執(zhí)行語句:printf("%d\n",strlen(str)); 的結果是 B A)3 B)7 C)6 D)12 16.以下不能對二維數(shù)組a進行正確初始化的語句是 C A)int a[2][3]={0}; B)int a[][3]={{1,2}{0}}; C)

65、int a[2][3]={{1,2},{3,4},{5,6}}; D)int a[][3]={1,2,3,4,5,6}; 17.下面對C語言的描述中,正確的是 A A)在C語言中調(diào)用函數(shù)時,只能將實參的值傳遞給形參,形參的值不能傳遞給實參。 B)C語言函數(shù)既可以嵌套定義又可以遞歸調(diào)用。 C)函數(shù)必須有返回值,否則不能使用函數(shù)。 D)C語言程序中有調(diào)用關系的所有函數(shù)都必須放在同一源程序文件中。 18.已知int *p();這里的p是 C A)指向int類型的指針變量。 B)int 類型的指針數(shù)組。 C)一個

66、函數(shù),該函數(shù)的返回值是指向int類型的指針變量。 D)一個指向函數(shù)的指針變量,該函數(shù)的返回值是int類型。 19.已知int a[3][4],*p=a;p+=6;那么*p和 D 的值相同。 A)*(a+6) B)*(&a[0]+6) C)*(a[1]+3) D)*(&a[0][0]+6) 20.已知函數(shù)定義如下: abcd(char *s1,char *s2) { while(*s2++=*s1++); } 函數(shù)abcd的功能是 A A)串復制 B)求串長 C) 串比較 D)串反向 21.標準庫函數(shù)fgets(s,n,f)的功能是 B A)從文件f中讀取長度為n的字符串存入指針s所指的內(nèi)存 B) 從文件f中讀取長度不超過n-1的字符串存入指針s所指的內(nèi)存 C) 從文件f中讀取n個字符串存入指針s所指的內(nèi)存 D)從文件f中讀取長度為n-1的字符串存入指針s所指的內(nèi)存 22. 以下程序的輸出結果是 D A)100 B)16

展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關資源

更多
正為您匹配相似的精品文檔
關于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!