中大网校引领成功职业人生中大网校“十佳网络教育机构”、“十佳职业培训机构”网址:语言笔试模拟试题(8)总分:100分及格:60分考试时间:120分每小题1分,共40分(1)下面程序的运行结果是#include<stdio.h>main(){inty=10;do{y--;}while(--y);printf(%d\n,y--);}A.-1B.1C.8D.0(2)下列程序的输出结果是(3)下列程序的运行结果是#includestdio.hmain(){intx=-9,y=5,z=8;if(xif(y<0)z=0;elsez+=1;printf(%d\n,z);}A.6B.7C.8D.9(4)下列各数据类型不属于构造类型的是A.枚举型B.共用型C.结构型D.数组型(5)阅读程序段,则执行后的输出结果为#includestdio.htypedefunion{longx[2];inty[4];charz[8];}atx;typedefstructaa{longx[2];inty[4];charz[8];}stx;main(){printf(union=%d,structaa=%d\n,sizeof(atx),sizeof(stx));}A.union=8,structaa=8B.union=8,structaa=24C.union=24,structaa=8D.union=24,structaa=24(6)以下函数返回a所指数组中最大值所在的下标值fun(int*a,intn){inti,j=0,p;p=j;for(i=j;iif(a[i]>a[p])_________;return(p);}在下划线处应填入中大网校引领成功职业人生中大网校“十佳网络教育机构”、“十佳职业培训机构”网址:=pB.a[p]=a[i]C.p=jD.p=I(7)设x,y,z,t均为整型变量,现有如下语句x=y=z=1;t=++x||++y&&++z;则执行这个语句后t的值为A.2B.1C.0D.不定值(8)如果需要打开一个已经存在的非空文件Demo进行修改下面正确的选项是A.fp=fopen(Demo,r);B.fp=fopen(Demo,ab+);C.fp=fopen(Demo,w+);D.fp=fopen(Demo,r+);(9)设变量a是int型,f是float型,i是double型,则表达式10+′a′+i*f值的数据类型为A.intB.floatC.doubleD.不确定(10)循环链表的主要优点是A.不再需要头指针了B.从表中任一结点出发都能访问到整个链表C.在进行插入、删除运算时,能更好的保证链表不断开D.已知某个结点的位置后,能够容易的找到它的直接前件(11)若变量已正确定义并赋值,以下符合C语言语法的表达式是A.a:=b+1B.a=b=c+2C.int18.5%3D.a=a+7=c+b(12)已有定义inta=-2;和输出语句printf(%8lx,a);以下正确的叙述是中大网校引领成功职业人生中大网校“十佳网络教育机构”、“十佳职业培训机构”网址:整型变量的输出形式只有%d一种B.%x是格式符的一种,它可以适用于任何一种类型的数据C.%x是格式符的一种,其变量的值按十六进制输出,但%8lx是错误的D.%8lx不是错误的格式符,其中数字8规定了输出字段的宽度(13)NULL是指A.0B.空格C.未知的值或无任何值D.空字符串(14)程序的3种基本控制结构是A.过程、子过程和分程序B.顺序、选择和重复C.递归、堆栈和队列D.调用、返回和转移(15)下面程序段的运行结果是char*format=%s,a=%d,b=%d\n;inta=11,b=10;a+=b;printf(format,a+=b,a,B.;A.for,a+=b,abB.format,a+=bC.a+=b,a=21,b=10D.以上结果都不对(16)下列是用户自定义标识符的是A._w1B.3_xyC.intD.LINE-3(17)有如下程序main(){chars[]=ABCD,*p;for(p=s+1;p<s+4;p++)printf(%s\n,p);}该程序的输出结果是A.ABCDBCDCDDB.ABC中大网校引领成功职业人生中大网校“十佳网络教育机构”、“十佳职业培训机构”网址:(18)以下叙述不正确的是A.一个C源程序可由一个或多个函数组成B.一个C源程序必须包含一个main函数C.C程序的基本组成单位是函数D.在C程序中,注释说明只能位于一条语句的后面(19)以下程序的输出结果是intf(){staticinti=0;ints=1;s+=i;i++;returns;}main(){inti,a=0;for(i=0;i<5;i++)a+=f();printf(%d\n,a);}A.20B.24C.25D.15(20)P以下程序的运行结果为#includestdio.hmain(){intm,n;for(m=0,n=10;m++)printf(%d,%d\n,m,n);}A.6,7B.7,6C.9,7D.7,9/P(21)若要打开A盘上user子目录下名为abc.txt的文本文件进行读、写操作,下面符合此要求的函数调用是A.fopen(A:\user\abtxt,r)B.fopen(A:\\user\\abtxt,rt+)C.fopen(A:\user\abtxt,rb)D.fopen(A:\user\abtxt,w)(22)下面程序的运行结果是#include<stdio.h>main(){inta=1,b=10;do{b-=a;a++;}while(b--<0);printf(a=%d,b=%d\n,a,B.;}A.a=3,b=11中大网校引领成功职业人生中大网校“十佳网络教育机构”、“十佳职业培训机构”网址:=2,b=8C.a=1,b=-1D.a=4,b=9(23)下面程序的运行结果是#includestdio.hmain(){intj,i,k=0;for(j=50;j<=60;j++){if(!(k%10))printf(\n);for(i=2;i<j;i++)if(!(j%i))break;if(i>=j-1){printf(%d,j);k++;}}}A.5359B.5953C.3595D.9535(24)有以下程序#includemain(){FILE*fp;inti=20,j=30,k,n;fp=fopen(d1.dat,w);fprintf(fp,%d\n,i);fprintf(fp,%d\n,j);fclose(fp);fp=fopen(d1.dat,r);fscanf(fp,%d%d,&k,&n);printf(%d%d\n,k,n);fclose(fp);}程序运行后的输出结果是A.2030B.2050C.3050D.3020(25)有如下程序段inta=14,b=15,x;charc=′A′;x=(a&&b)&&(c<′B′);执行该程序段后,x的值为A.tureB.falseC.0D.1(26)以下程序的输出结果是unionmyun{struct{intx,y,z;}u;intk;}a;main(){a.u.x=4;a.u.y=5;a.u.z=6;a.k=0;printf(%d\n,a.u.x);}A.4B.5C.6D.0(27)能正确表示逻辑关系:a≥10或a≤0的C语言表达式是A.a>=10ora<=0B.a>=0|a<=10C.a>=10&&a<=0中大网校引领成功职业人生中大网校“十佳网络教育机构”、“十佳职业培训机构”网址:=10‖a<=0(28)已知二叉树后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是A.acbedB.decabC.deabcD.cedba(29)为用户与数据库系统提供接口的语言是A.高级语言B.数据描述语言(DDL)C.数据操纵语言(DML)D.汇编语言(30)已知inta;则下面的说明指针变量p的语句正确的是A.intp=&aB.int*p=aC.int*p=&aD.int*p=*a(31)链表不具有的特点是A.不必事先估计存储空间B.可随机访问任一元素C.插入删除不需要移动元素D.所需空间与线性表长度成正比(32)下面程序的功能是把316表示为两个加数的和,使两个加数分别能被13和11整除,请选择填空。#include<stdio.h>main(){inti=0,j,k;do{i++;k=316-13*i;}while(______);j=k/11;?printf(316=13*%d+11*%d,i,j);}A.k/11B.k%11C.k/11==0D.k%11==0(33)若有下面的程序段:chars[]=china;char*p;p=s;则下列叙述正确的是A.s和p完全相同B.数组s中的内容和指针变量p中的内容相等C.s数组长度和p所指向的字符串长度相等中大网校引领成功职业人生中大网校“十佳网络教育机构”、“十佳职业培训机构”网址:*p与s[0]相等(34)有如下程序main(){floatx=2.0,y;if(x<0.0)y=0.0;elseif(x<10.0)y=1.0/x;elsey=1.0;printf(%f\n,y);}该程序的输出结果是A.0.000000B.0.250000C.0.500000D.1.000000(35)阅读下列程序,则运行结果为#includestdio.hfun(){staticintx=5;x++;returnx;}main(){inti,x;for(i=0;i<3;i++)x=fun();printf(%d\n,x);}A.5B.6C.7D.8每小题2分,共20分(1)下述对C语言字符数组的描述中错误的是A.字符数组的下标从0开始B.字符数组中的字符串可以进行整体输入/输出C.可以在赋值语句中通过赋值运算符=对字符数组整体赋值D.字符数组可以存放字符串(2)若inti,j;,则for(i=j=0;i<10&&j<8;i++,j+=3)控制的循环体执行的次数是A.9B.8C.3D.2(3)已知intt=0;while(t=1){...}则以下叙述正确的是A.循环控制表达式的值为0B.循环控制表达式的值为1C.循环控制表达式不合法D.以上说法都不对中大网校引领成功职业人生中大网校“十佳网络教育机构”、“十佳职业培训机构”网址:(4)若有以下程序#includevoidf(intn);main(){voidf(intn);f(5);}voidf(intn){printf(%d\n,n);}则以下叙述中不正确的是A.若只在主函数中对函数f进行说明,则只能在主函数中正确调用函数fB.若在主函数前对函数f进行说明,则在主函数和其后的其他函数中都可以正确调用函数fC.对于以上程序,编译时系统会提示出错信息:提示对f函数重复说明D.函数f无返回值,所以可用void将其类型定义为无返回值型(5)不能进行++和--运算的数据类型为A.指针B.整型C.长整型D.常量(6)串的长度是A.串中不同字符的个数B.串中不同字母的个数C.串中所含字符的个数且字符个数大于零D.串中所含字符的个数(7)下列选项可以正确表示字符型常量的是A.′\r′B.aC.\897