C语言程序设计综合测试题

请大家在60分钟内完成下面的答题,总分100分。制卷人:蒋腊菊制卷时间:2020-02-12

Q1:C语言中,可用来定义多个不同数据类型变量的数据类型是

A.结构体
B.文件型
C.数组
D.枚举

Q2:C语言中,可设有如下程序段,int k=8;while(k==’8’){k--;}则下面描述中正确的是

A. 循环体语句k--;执行10次
B. 循环体语句k--;执行无限次
C. 循环体语句k--;一次也不执行
D. 循环体语句k--;执行一次用来定义多个不同数据类型变量的数据类型是

Q3:若有以下宏定义:#define N 2#define Y(n) ((N+2)∗n)则执行语句“z=3∗(N+Y(5));”后的结果是

A.语句有错误
B.z = 66
C.z = 70
D.z 无定值

Q4:以下叙述中错误的是

A. C语言中对二进制文件的访问速度比文本文件快
B. C语言中,随机文件以二进制代码形式存储数据
C. 语句FILE fp;定义了一个名为fp的文件指针
D. C语言中的文本文件以ASCII码形式存储数据

Q5:以下能对二维数组a 进行正确初始化的语句是

A. int a[2][]={{1,0,1},{5,2,3}};
B. int a[][3]={{1,2,3},{4,5,6}};
C. int a[2][4]={{1,2,3},{4,5},{6}};
D. int a[][3]={{1,0,1},{},{1,1}};

Q6:下面程序的运行结果是 main( ) { int a,b,c; a=b=c=0; c= (a- = a-5 ), ( a = b,b+5); printf(“%d,%d,%d\n”,a,b,c); }

选项1

Q7:下面程序的运行结果是 #include main(){ int x[5]={2,4,6,8,10},*p,**pp;p=x;pp=p;printf(“%d”,*(p++));printf(“%d\n”,**pp);}

选项1

Q8:下面程序的运行结果是 main(){ int i=2,j=3,k=4; if(i++==2(++j==3||k++==3)) k++; printf(%d%d%d\n,i,j,k); }

选项1

Q9:下面程序段的功能是 fun(char *a,char *b) { while((*a!=\0)(*b!=\0)(*a==*b)) { a++;b++; } return(*a-*b); }

选项1

Q10:下面程序的运行结果是 #include void WriteStr(char *fn,char *str) { FILE *fp; fp=fopen(fn,w);fputs(str,fp);fclose(fp);}main(){ WriteStr(t1.dat,start); WriteStr(t1.dat,end); }

选项1

Q11:下列程序的功能是:定义了3*3的二维数组,并在主函数中自动赋值;函数fun的功能是使二维数组的上三角元素的值全部置0。请将正确的内容填入答题卡的相应位置上,使程序完整。调用函数前 调用函数后1 2 3 1 0 02 4 6 2 4 03 6 9 3 6 9#include ① {inta[3][3],i,j;for(i=1;i3;i++)for(j=1;j=3;j++) ② =i*j;fun(3,a);printf(“theresult:\n”);for(i=0;i3;i++){for(j=1;j3;j++)printf(“%4d”,a[i][j]);printf(“\n”);}}voidfun( ③ ){inti,j;for(i=0;ifor(j=i+1;j④ ;j++)a[i][j]=0;}

填空1
填空2
填空3
填空4

Q12:已知head指向单链表的第一个结点,以下函数del完成从单向链表中删除值为num的第一个结点。 #include “stdio.h” struct student { int info; struct student *link; }; struct student *del(struct student *head,int num) { struct student *p1,*p2; if(head==NULL) printf(“\n list null!\n”); else { p1=head; while( ① ) { p2=p1; p1=p1-link; } if(num==p1-info) { if(p1==head) ② ; else ③ ; printf(“delete:%d\n”,num); } else printf(“%d not been found!\n”,num); } return head; }

填空1
填空2
填空3

Q13:下面程序的运行运行结果为:13431,请根据结果填写程序。struct NODE { int k; struct NODE *link;};main(){ struct NODE m[5],*p=m,*q=m+4; int i=0; while(p!=q) { ① ;p++; q-k=i++;② ;}③ ; for(i=0;i5;i++) printf(%d,m[i].k); printf(\n);}

填空1
填空2
填空3

Q14:姓名

A1
问卷网
C语言程序设计综合测试题
关于
1年前
更新
5
频次
14
题目数
分享