资源预览内容
亲,该文档总共15页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
20春学期(1709、1803、1809、1903、1909、2003)C语言程序设计试卷总分:100 得分:100一、单选题 (共 40 道试题,共 80 分)1.设有说明语句:char w;int x;float y;double z;w*x+z-y值的数据类型为( )。A.floatB.charC.intD.double答案:D2.下列函数调用中,不正确的是( )A.max(a,b)B.max(3,a+b)C.max(3,5)D.int max(a,b)答案:D3.C语言中规定,if语句的嵌套结构中,else总是与( )配对A.与最近的if 配套B.与第一个if 配套C.按缩进位置相同的if配套D.与最近的且尚未配对的if 配套答案:D4.以下不正确的语句为( )A.if(xy)x+;y+;B.if(x=y)&(x!=0)x+=y;C.if(x!=y) scanf(%d,&x); else scanf(%d,&y);D.if(xy);答案:B5.以下对C语言中共用体类型数据的叙述正确的是( )A.可以对共用体变量名直接赋值B.共用体类型定义中不能出现结构体类型的成员C.一个共用体变量中可以同时存放其所有成员D.一个共用体变量中不能同时存放其所有成员答案:D6.fwrite函数的一般调用形式是( )A.fwrite(fp,size,count,buffer)B.fwrite(fp,count,size,buffer)C.fwrite(buffer,count,size,fp)D.fwirte(buffer,size,count,fp)答案:D7.C语言的函数中,( )。A.数组名不能作形参B.必须有形参C.形参必须是变量名D.可以有也可以没有形参答案:D8.main( ) int n=4; while(n)printf(%d ,-n); 以上程序的输出结果是( )。A.2 0B.3 1C.3 2 1 0D.2 1 0答案:C9.fscanf函数的正确调用形式是( )。A.fscanf(文件指针,格式字符串,输出表列)B.fscanf(格式字符串,输出表列, fp)C.fscanf(格式字符串,文件指针,输出表列)D.fscanf(文件指针,格式字符串,输入表列)答案:D10.从用户使用的角度看,函数有两种,它们是( )A.库函数和用户自定义函数B.库函数和主函数C.用户自定义函数和主函数D.主函数和子函数答案:A11.在C语言中,int、char和short三种类型的数据在内存中所占用的字节数( )。A.由用户自己定义B.均为2个字节C.是任意的D.由所用机器的机器字长决定答案:D12.设有如下程序 # include main() char ch1=A,ch2=a; printf(%cn,(ch1,ch2); 则下列叙述正确的为( )A.程序的输出结果为大写字母AB.程序的输出结果为小写字母aC.运行时产生错误信息D.格式说明符的个数少于输出项的个数,编译出错答案:B13.下列关于数组的特征错误的是( )。A.定义数组长度时可以用常量或变量B.可以有多维C.可以作参数传递D.先定义后使用答案:A14.C语言结构体类型变量在程序执行期间( )。A.部分成员驻留在内存中B.没有成员驻留在内存中C.所有成员一直驻留在内存中D.只有一个成员驻留在内存中答案:C15.数组名作为实参传递给形参时,数组名被处理为( )A.该数组的长度B.该数组的元素个数C.该数组的首地址D.该数组中各元素的值答案:C16.main() int x=2,y=-1,z=2; if(xy) if(y0)B.if (strcmp(a,b)0)C.if (strcmp(a,b)D.if (ab)答案:B20.若执行fopen函数时发生错误,则函数的返回值是( )A.地址值B.nullC.EOFD.1答案:B21.以下对一维整型数组 a 的正确说明是( )A.int a(10) ;B.int n=10,an;C.int n;D.define SIZE 10 int aSIZE;答案:D22.int k=1; while (k=10); 上述语句执行后,变量k的值是( )。A.无限循环,值不定B.9C.11D.10答案:A23.当说明一个结构体变量时系统分配给它的内存是( )A.各成员所需内存的总和B.结构中第一个成员所需内存量C.成员中占内存量最大者所需的容量D.结构中最后一个成员所需内存量答案:A24.for (i=2; i=0; ) printf(“%d” , i-) ; 以上程序段的循环次数是( )A.2次B.无限次C.0次D.1 次答案:C25.若已有定义int x=2; int *p=&x;则*p的值为( )A.2B.*xC.&xD.&p答案:A26.main() int x,y,z; scanf (“%d%d%d”,&x,&y,&z); printf(“x+y+z=%dn”,x+y+z); 输入数据的形式是25,13,10,则程序的输出结果是( )A.不确定值B.x+z=35C.x+y+z=48D.x+y+z=35答案:C27.x=-1; do x=x*x; while (x); 以上程序段( )A.有语法错误B.是死循环C.循环执行2次D.循环执行1次答案:A28.x=-2; y=-1; if(x!=0) if(x0) y=1; else y=0; 该程序段的输出结果为( )。A.不确定B.1C.0D.-1答案:C29.设以下变量均为int类型,则值不等于7的表达式是( )A.(x= y= 6, x+y,x+1)B.(x= y= 6,x+y,y+1)C.(x= 6,x+1,y= 6,x+y)D.(y=6,y+l,x = y,x+1)答案:C30.若有以下定义语句 union data int l; char c; float f;a; int n;则以下语句正确的是( )A.printf(%dn,a.l);B.n=a;C.a=5;D.a=2,a,1.2;答案:A31.printf函数中用到格式符%5s ,其中数字5表示输出的字符串占用5列。如果字符串长度大于5,则输出按方式( )A.输出错误信息B.按原字符长从左向右全部输出C.右对齐输出该字串,左补空格D.从左起输出该字串,右补空格答案:B32.若已有定义int x;下列说明指针变量p指向x的正确语句是( )A.int p=&x;B.int *p=&x;C.int p=x;D.int *p=x;答案:B33.已有定义 int a=-2;和输出语句:printf(%8lx,a);以下正确的叙述是:A.整型变量的输出格式符只有%d一种B.%x 是格式符的一种,它可以适用于任何一种类型的数据C.%x 是格式符的一种,其变量的值按十六进制输出,但%8lx 是错误的D.%8lx 不是错误的格式符,其中数字8规定了输出字段的宽度答案:D34.以下叙述中错误的是:A.变量的作用域取决于变量定义语句出现的位置B.同一程序中,全局变量的作用域一定比局部变量的作用域大C.局部变量的作用域是在定义它的函数体内D.全局变量的作用域是从定义位置开始至源文件结束答案:B35.下面不正确的字符串常量是( )。A.abcB.1212C.0 D. 答案:A36.fgetc函数的作用是从指定文件读入一个字符,该文件的打开方式必须是( )A.追加B.读或读写C.答案B和C都正确D.只写答案:C37.若要打开D盘上user文件夹下名为abctxt的文本文件进行读、写操作,符合此要求的函数调用是( )A.fopen(D:userabc.txt,r)B.fopen(D:userabc.txt,w)C.fopen(D:userabc.txt,r+)D.fopen(D:userabc.txt,rb)答案:C38.以下不正确的叙述是( )A.在C程序中,逗号运算符的优先级最低B.在C程序中,APH和aph是两个不同的变量C.若a和b类型相同,在执行了赋值表达式a=b后b中的值将放人a中,而b中的值不变。D.当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值。答案:D39.在C语言中,char型数据在内存中的存储形式是( )A.补码B.反码C.原码D.ASCII码答案:D40.如果在C语言中一个int型数据在内存中占2个字节,则unsigned int型数据的取值范围为( )。A.0255B.032 767C.065 535D.02 147 483 647答案:C二、判断题 (共 10 道试题,共 20 分)41.赋值表达式是错误的。( )答案:错误42.C语言采用解释方式将源程序转换为二进制的目标代码。( )答案:错误43.在Visual C中,实型数据在内存中占个字节。( )答案:正确44.C语言中的标识符以字母或下划线开头,可跟任何字符。( )答案:错误45.在Visual C中,整型数据在内存中占个字节。( )答案:错误46.字符型数据和整数之间是不可以通用的。( )答案:错误47.在Turbo C+中,存储字符串常数时所占内存空间是不固定。( )答案:正确48.在语言中,字母的大小写不被区分。( )答案:错误49.对语言中用到的任何一个变量都要规定其类型。( )答案:正确50.被main函数调用的函数只能是库函数。( )答案:错误范老师作业辅导请加WX:aopon007
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号