资源描述:
《c语言程序设计试题及答案》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
《C语言程序设计》(卷)考核班级学生数印数考核方式闭卷考核时间120分钟(本试卷包括第一卷和第二卷,答卷时间总共120分钟)第一卷第一部分:基础知识(20项,共40分)1.一个C语言程序是由(c)组成的。A.主程序B.子程序C.函数D.过程2.转换说明符%x的输出形式是(BC)。A.十进制B.八进制C.十六进制D.二进制3.若a、b均为int型变量,且a=100,则关于循环语句for(b=100;a!=b;++a,++b)printf(“------------“);的正确说法是(C)。A.循环体只执行一次B.死循环C.循环体一次也不执行D.输出-----------4.若x、y、z均为int型变量,则执行下列语句后的z值为(A)。x=1;y=2;z=3;z=(x>y)?z:y;z=(z=1;n--),下列语句实现将S2所指字符数组中前n个字符复制到S1所指字符数组中,其中代码不正确的是(D)。A.*S1++=*S2++B.S1[n-1]=S2[n-1]C.*(S1+n-1)=*(S2+n-1)D.*(++S1)=*(++S2)17.调用函数的实参与被调用函数的形参应该有如下关系(CD)。A.只要求实参和形参个数相等B.只要求形参和实参顺序相同C.只要求实参和形参数据类型相同D.上述三点均需具备18.联合体成员的数据类型(B)。A.相同B.可以不同也可以相同C.长度一样D.是结构体变量19.由系统分配和控制的标准输出文件为(D)。A.键盘B.磁盘C.打印机D.显示器20.C语言标准库函数fread(fd,buffer,n)的功能是(A)。A.从文件fd中读取长度不超过n个字节的数据送入buffer指向的内存区域B.从文件fd中读取长度不超过n-1个字节的数据送入buffer指向的内存区域C.从文件fd中读取长度不超过n个字符送入buffer指向的内存区域D.从文件fd中读取长度不超过n-1个字符送入buffer指向的内存区域一.基础知识(20项,共40分)1.C2.C3.C4.A5.D6.B7.B8.B9.C10.A11.C12.B13.B14.D15.A16.D17.D18.B19.D20.A第二部分:简单程序(12项,共30分)21.下列程序main(){intx,y,z;x=y=2;z=3;y=z++-1;printf(“%dt%dt”,x,y);y=++x-1;printf(“%dt%d ”,x,y);y=z---1;printf(“%dt%dt”,z,y);y=--z-1;printf(“%dt%d ”,z,y);}运行后输出的数据为¬¬¬_C_。 A.3142B.3133C.2232D.2132241324223321131222.下列程序main(){inti,j;char*a,c;a=”computer”;printf(“%s”,a);for(i=0,j=7;i%s ”,a);c=a[j-1,i=2+j];printf(“a[%d]=%c ”,i,c);}运行后输出的数据为___.A.computer->computerB.computer->retupmoca[3]=ua[5]=mC.computer->retupmocD.computer->retupmoca[4]=pa[2]=t23.下列程序intsum(intn){intp=1,s=0,i;for(i=1;i<=n;i++)s+=(p*=i);returns;}main(){printf(“sum(5)=%d ”,sum(5));}运行后输出的数据为____A.sum(5)=151B.sum(5)=152C.sum(5)=153Dsum(5)=15524.下列程序main(){staticinta[]={5,6,7,3,2,9};ints1,s2,i,*ptr;s1=s2=0;ptr=&a[0];for(i=0;i<5;i+2=2){s1+=*(ptr+i);s2+=*(ptr+i+1);}printf(“s1=%d,s2=%d ”,s1,s2);} 运行后输出的数据为_____A.s1=18,s2=14B.s1=14,s2=32C.s1=14,s2=18D.s1=15,s2=1925.下列程序intc=1;main(){staticinta=5;intb=6;printf(“a=%db=%dc=%d ”,a,b,c);func();printf(“a=%d,b=%d,c=%d ”,a,b,c);func();}func(){staticinta=4;intb=10;a+=2;c+=10;b+=c;printf((“a=%d,b=%d,c=%d ”,a,b,c);}运行后输出的数据为____.A.a=5b=6c=1B.a=5b=6c=1a=6b=21c=11a=7b=17c=11a=5b=6c=11a=5b=6c=11a=8b=31c=21a=9b=17c=21C.a=5b=6c=1D.a=5b=6c=1a=6b=21c=11a=7b=17c=11a=6b=21c=11a=7b=17c=11a=8b=31c=21a=9b=38c=2126.已知structstudent{char﹡name;intstudent_n;chargrade;};structstudenttemp,*p=&temp;temp.name=”chou”;则下面不正确的是_______。表达式值A.p→namechouB.(*p)→name+2hC.*p→name+2eD.*(p→name+2)o27.下列程序#defineMAX10main() {inti,sum,a[]={1,2,3,4,5,6,7,8,9,10};sum=1;for(i=0;i