您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > C模拟考试题及参考答案2(08级)
《C语言程序设计》模拟试题2(08级)1、下面程序的输出结果是____。main(){inti,j,k=10;for(i=0;i2;i++){k++;{intk=0;for(j=0;j=3;j++){if(j%2)continue;k++;}}k++;}printf(k=%d\n,k);}A.k=18B.k=14C.k=8D.k=42、以下选项中,对指针变量p不正确的操作是()。A.inta[6],*p;p=&a;B.inta[6],*p;p=a;C.inta[6];int*p=a=1000;D.inta[6];int*p1,*p2=a;*p1=*p2;3、设P1和P2是指向同一个int型一维数组的指针变量,k为int型变量,则不能正确执行的语句是()A.P2=k;B.P1=P2;C.k=*P1+*P2;D.k=*P1*(*P2);4、若“inta[4][10],*p,*q[4];”,且0=i4,则下面选项中()是错误的赋值。A.p=aB.q[i]=a[i]C.p=a[i][0]D.q[i]=&a[2][0]5、以下关于函数调用的描述中错误的是()。A.实参可以是常量、表达式或有确定值的变量B.实参和形参共用同一内存单元C.实参和形参的类型、个数必须一致D.只有发生函数调用时,系统才为形参分别存储空间6、以下正确的描述是()。A.函数的定义可以嵌套,但函数的调用不可以嵌套B.函数的定义不可以嵌套,但函数的调用可以嵌套C.函数的定义和函数的调用均不可以嵌套D.函数的定义和函数的调用均可以嵌套7、已经有以下函数定义:fun(chara){printf((“a=%c\n”,a);}该函数的返回值类型是()。A.voidB.charC.intD.不确定8、以下叙述中正确的是()。A.在C语言中静态变量在未赋值时,其值为0B.在C语言中任何变量在未赋值时,其值为0C.外部变量在程序的任何函数中均有效D.函数中任何一个局部变量均无法保留上一次调用时的运行结果9、在对文件进行操作时,读文件的含义是():A.将内存中的信息存入磁盘B.将磁盘中的信息输入到内存C.将CPU中的信息存入磁盘D.将磁盘中的信息输入到CPU10、调用fopen函数打开一个文件失败时,函数返回的值是():A.-1B.EOFC.NULLD.111、feof(fp)函数是用来测试fp所指的文件是否结束,如果文件结束,则feof(fp)返回的值是():A.0B.1C.NULLD.以上答案都不对12、下述程序的正确运行结果是()。#includestdio.hintfun(intx){intp;if(x==0||x==1)return3;elsep=x-fun(x-2);returnp;}voidmain(){printf(“\n%d”,fun(9));}A.8B.7C.10D.913、以下不正确的if语句是()。A.if(ab)t=a;B.if(a!=b&&b);C.if(a=b)printf(equal);D.if(ab)&&(bc)printf(max=%d,a);14、关于if后面一对圆括号中的表达式,叙述正确的是()。A.只能用关系表达式B.只能用逻辑表达式C.只能用关系表达式或逻辑表达式D.可以使用任意合法的表达式15、C程序中,合法的关键字是():A.intB.integerC.IntD.Integer16、在C程序中,不合法的浮点型常量是():A.3.4E2.5B..456C.0.820000D.100.3e517、在引用数组元素时,其下标表达式的类型必须是()。A.字符型B.整型C.整型或字符型D.整型常量18、以下运算符中,优先级最高的是()。A.!B.[]C.++D.%19、对定义inta[2];的正确描述是()。A.定义一维数组a,包含a[1]和a[2]两个元素B.定义一维数组a,包含a[0]和a[1]两个元素C.定义一维数组a,包含a[0]、a[1]和a[2]三个元素D.定义一维数组a,包含a(0)、a(1)和a(2)三个元素20、C语言中while和do-while循环的主要区别为()。A.do-while的循环体至少无条件执行一次B.while的循环控制条件比do-while的循环控制条件严格C.do-while允许从外部转到循环体内D.do-while的循环体不能是复合语句21、有以下程序段:intt=0;while(t=1)t--;while循环执行的次数是()。A.一次也不执行B.只执行一次C.无限次D.执行2次22、While语句中循环结束的条件是while后面表达式的值是()。A.0B.1C.-1D.非023、执行循环语句for(i=1;i10;i++)a++;后,变量i的值是()。A.9B.10C.11D.不确定24、若变量x和y均为整型,且x=y=1,则表达式y+=x+1的值为()。A.3B.2C.1D.无正确结果25、表示关系x=y=z的c语言表达式为()。A.(X=Y=Z)B.(X=Y)AND(Y=Z)C.(X=Y)&&(Y=Z)D.(X=Y)&(Y=Z)26、下面程序的输出结果是()。#includestdio.hmain(){intn[3][3],i,j;for(i=0;i3;i++)for(j=0;j3;j++)n[i][j]=i+j;for(i=0;i2;i++)for(j=0;j2;j++)n[i+1][j+1]+=n[i][j];printf(%d\n,n[i][j]);}A.14B.0C.6D.不确定27、下面程序的输出结果是____。#includestdio.hchar*p=abcdefghijklmnopq;main(){inti=0;while(*p++!='e');printf(%c\n,*p);}A.cB.dC.eD.f28、下面程序的输出结果是____。#includestdio.hstructstr1{charc[5];char*s;};main(){structstr1s1[2]={{ABCD,EFGH},{IJK,LMN}};structstr2{structstr1sr;intd;}s2={OPQ,RST,32767};structstr1*p[2];p[0]=&s1[0];p[1]=&s1[1];printf(%s,++p[1]-s);}A.LMNB.MNC.ND.IJK29、设有以下宏定义:#defineN3#defineY(n)((N+1)*n)则执行语句:z=2*(N+Y(5+1));后,z的值为():A.出错B.48C.54D.4230、在VC6.0中,若有以下说明:structst{intx;floaty;unionun{chara[10];doubleb[2];}c;};则:sizeof(structst)的值为():A.34B.22C.42D.2431、在VC6.0中,若有以下共用体说明:unionuu{floatx;doubley;charz;}luck;luck所占存储单元字节数为():A.8B.4C.13D.132、在下列结构变量st的定义中,不正确的是()。A.structstudent{intnum;floatscore;}st;B.structstudent{intnum;floatscore;};structstudentst;C.struct{intnum;floatscore;}st;D.struct{intnum;floatscore;}student;studentst;33、有以下程序:voidmain(){;;;}程序运行后的结果是():A.编译时有警告错误B.编译时有语法错误C.编译没有错误,但是运行时出错D.程序正常运行,但是无任何输出34、x为int型变量,执行以下语句后,x的值为()。x=10;x+=x-=x-x;A.10B.20C.30D.4035、若有输入语句scanf(%d,%d,%d,&x,&y,&z);,欲使x的值为10,y的值为20,z的值为30,则正确的输入应为():A.10,20,30〈回车〉B.102030〈回车〉C.10,20,30〈回车〉D.10〈回车〉20〈回车〉30〈回车〉36、统计学生成绩中不及格的学生名单。#includestdio.hstructstudent{longnum;charname[20];floatscore;}stu[6]={{9910110,”wangling”,85},{9910111,”liming”,90.5},{9910112,”fengyong”,90.5},{9910113,”fangjun”,56},{9910114,”sunping”,77.5},{9910115,”kongxiao”,50.5}};main(){structstudent*p;intcount=0;printf(“不及格名单:\n”);for(p=stu;_pstu+6_______;p++)if(p-score60){count++;printf(“%ld:%-12s%.1f\n”,p-num,p-name,p-score);}printf(“不及格人数:%d\n”,count);}37、下面程序是实现1+1/2+1/4+1/6+…+1/50的值,请填空:main(){inti=2;floatsum=1;while(i=50){sum=sum+1/(float)i;i++;__i++________;}printf(“sum=%f\n”,sum)}38、下面程序输入一个字符串,输出其中所出现过的大写英文字母.如输入字符串“UKSDYckjsjsjJSJJD”;应输出“UKSDYJ”。按程序功能填空。#includestdio.hmain(){chara[80],b[26];inti,j,k=0;gets(a);for(i=0;a[i]!='\0';i++)if(a[i]='A'&&a[i]<='Z'){for(j=0;jk;j++)if(b[j]==a[i])break;if(j==k){b[k]=a[i];k++;}}b[k]='\0';for(i=0;istrlen(b)__;i++)printf(%c,b[i]);printf(\n);}39、下面的程序将浮点数写到文件test中,然后读出并显示。#includestdio.hmain(){FILE*fp;floatf=12.34;if((_fp=fopen_____(“test”,“wb”))==NULL){printf(Cannotopenfile.);exit(l);}fwrite(&f,sizeof(float),1,fp);rewind(fp);fread(&f,sizeof(float),1,fp);printf(“%f\n”,f);fclose(fp);}40、下面的程序可以实现从10个数中找出最大值和最小值功能,请填空。#includestdio.hintmax,min;find(int*p,intn){int*q;max=min=*p;for(q=p;qp+n;q++)if(__max*q_________)max=*q;elseif(min*q)min=*q;}main(){intI,num[10];printf(Input10numbers:\n);for(i=0;i10;i++)scanf(%d,&num[i]);find(num,10);printf(max=%d,min=%d\n,max,min);}41、打开C:\CAADATA\41中的源程序文件pg207.cpp,补充程序并以原文件名保存(不得删除原文件中的注释内容,否则该题不计分),使得程序运行时完成以下功能:编写程序找出3×3矩阵中的最大元素及其行列位置并输出。42、打开C:\CAADATA\42中的源程序文件pg307.cpp,按要求补充程序并以原文
本文标题:C模拟考试题及参考答案2(08级)
链接地址:https://www.777doc.com/doc-2907510 .html