《南开21春学期(2103)《C语言程序设计》在线作业》由会员分享,可在线阅读,更多相关《南开21春学期(2103)《C语言程序设计》在线作业(10页珍藏版)》请在金锄头文库上搜索。
1、1.struct person char name9; int age; struct person class10=John,17,Paul,19,Mary18,adam,16; 根据上面的定义,能打印出字母M的语句是( )。A.printf(%cn,class3.name);B.printf(%cn,class3.name1);C.printf(%cn,class2.name1);D.printf(%cn,class2.name0)【参考答案】: D2.main() int x,y,z; scanf (“%d%d%d”,&x,&y,&z); printf(“x+y+z=%dn”,x+y+z
2、); 输入数据的形式是25,13,10,则程序的输出结果是( )A.xyz=48B.xyz=35C.xz=35D.不确定值【参考答案】: A3.fwrite函数的一般调用形式是( )A.fwrite(buffer,count,size,fp)B.fwrite(fp,size,count,buffer)C.fwrite(fp,count,size,buffer)D.fwirte(buffer,size,count,fp)【参考答案】: D4.以下符合C语言语法的赋值表达式是( )A.d=9ef=d9B.d=9e,f=d9C.d=9十e,e,d十9D.d=9十e=d十7【参考答案】: B5.以下对
3、一维整型数组 a 的正确说明是( )A.int a(10) ;B.int n=10,an;C.int n;D.define SIZE 10 int aSIZE;【参考答案】: D6.若有定义char str= “very good”,则str的长度为( )A.8B.9C.10D.11【参考答案】: C7.若已有定义int x;下列说明指针变量p指向x的正确语句是( )A.int p=B.int *p=C.int p=x;D.int *p=x;【参考答案】: B8.x=-2; y=-1; if(x!=0) if(x0) y=1; else y=0; 该程序段的输出结果为( )。A.1B.0C.-
4、1D.不确定【参考答案】: B9.下面不正确的字符串常量是( )。A.abcB.1212C.0 D. 【参考答案】: A10.判断字符串a是否大于b,应当使用( )A.if (ab)B.if (strcmp(a,b)C.if (strcmp(b,a)0)D.if (strcmp(a,b)0)【参考答案】: D11.设以下变量均为int类型,则值不等于7的表达式是( )A.(x= y= 6, xy,x1)B.(x= y= 6,xy,y1)C.(x= 6,x1,y= 6,xy)D.(y=6,yl,x = y,x1)【参考答案】: C12.fscanf函数的正确调用形式是( )。A.fscanf(文
5、件指针,格式字符串,输出表列)B.fscanf(格式字符串,输出表列, fp)C.fscanf(格式字符串,文件指针,输出表列)D.fscanf(文件指针,格式字符串,输入表列)【参考答案】: D13.关于return语句,下列说法正确的是( )。A.不能在主函数中出现B.必须在每个函数中出现C.可以在同一个函数中出现多次D.只能在除主函数之外的函数中再出现一次【参考答案】: C14.C语言结构体类型变量在程序执行期间( )。A.所有成员一直驻留在内存中B.只有一个成员驻留在内存中C.部分成员驻留在内存中D.没有成员驻留在内存中【参考答案】: A15.下面4个选项中,均是C语言关键字的选项是(
6、 )。A.auto enum includeB.switch typedef continueC.signed union scanfD.if struct type【参考答案】: B16.判断字符串a是否大于b,应当使用( )A.if (ab)B.if (strcmp(a,b)C.if (strcmp(b,a)0)D.if (strcmp(a,b)0)【参考答案】: D17.从用户使用的角度看,函数有两种,它们是( )A.库函数和用户自定义函数B.库函数和主函数C.用户自定义函数和主函数D.主函数和子函数【参考答案】: A18.若以”a+”方式打开一个已存在的文件,则以下叙述正确的是( )。
7、A.文件打开时,原有文件内容不被删除,位置指针移到文件末尾,可作添加和读操作。B.文件打开时,原有文件内容被删除,位置指针移到文件开头,可作重新写和读操作。C.文件打开时,原有文件内容被删除,只可作写操作。D.以上各种说法皆不下确。【参考答案】: A19.下列函数调用中,不正确的是( )A.max(a,b)B.max(3,ab)C.max(3,5)D.int max(a,b)【参考答案】: D20.for (i=2; i=0; ) printf(“%d” , i-) ; 以上程序段的循环次数是( )A.2次B.无限次C.0次D.1 次【参考答案】: C21.设有说明语句:char w;int
8、x;float y;double z;w*x+z-y值的数据类型为( )。A.floatB.charC.intD.double【参考答案】: D22.已有定义 int a=-2;和输出语句:printf(%8lx,a);以下正确的叙述是:A.整型变量的输出格式符只有%d一种B.%x 是格式符的一种,它可以适用于任何一种类型的数据C.%x 是格式符的一种,其变量的值按十六进制输出,但%8lx 是错误的D.%8lx 不是错误的格式符,其中数字8规定了输出字段的宽度【参考答案】: D23.已知各变量的类型说明如下: int i=8,k,a,b; unsigned long w=5; double x
9、=1.42,y=5.2; 则以下符合C语言语法的表达式是:A.a十=a一=(b= 4)*(a=3)B.a=a*3=2C.x%(一3)D.y=f1oat(i)【参考答案】: A24.C语言中规定,if语句的嵌套结构中,else总是与( )配对A.与最近的if 配套B.与第一个if 配套C.按缩进位置相同的if配套D.与最近的且尚未配对的if 配套【参考答案】: D25.在C语言中,char型数据在内存中的存储形式是( )A.补码B.反码C.原码D.ASCII码【参考答案】: D26.若有以下定义语句 union data int l; char c; float f;a; int n;则以下语句
10、正确的是( )A.a=5;B.a=2,a,1.2;C.printf(%dn,a.l);D.n=a;【参考答案】: C27.#include “stdio.h” void main() int sum=0,a=1; while(a=10) sum=sum+a; a+; printf(“sum=%dn”,sum); 以上程序段的运行结果是( )A.sum=0B.sum=55C.sum=10D.sum=11【参考答案】: B28.数组名作为实参传递给形参时,数组名被处理为( )A.该数组的长度B.该数组的元素个数C.该数组的首地址D.该数组中各元素的值【参考答案】: C29.下面程序段 int k=
11、2; while (k=0) printf(“%d”,k);k-; 则下面描述中正确的是()。A.while 循环执行 10 次B.循环是无限循环C.循环体语句一次也不执行D.循环体语句执行一次【参考答案】: C30.fgetc函数的作用是从指定文件读入一个字符,该文件的打开方式必须是( )A.只写B.追加C.读或读写D.答案B和C都正确【参考答案】: D31.设有以下说明语句 struct stu int a;float b;stutype; 则以下叙述不正确的是( )A.stutype 是用户定义的结构体类型名B.a 和 b 都是结构体成员名C.struct 是结构体类型的关键字D.str
12、uct stu 是用户定义的结构体类型【参考答案】: A32.若已有定义int x=2; int *p=&x;则*p的值为( )A.2B.&xC.*xD.&p【参考答案】: A33.以下不正确的叙述是( )A.在C程序中,逗号运算符的优先级最低B.在C程序中,APH和aph是两个不同的变量C.若a和b类型相同,在执行了赋值表达式a=b后b中的值将放人a中,而b中的值不变。D.当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值。【参考答案】: D34.以下不正确的语句为( )A.if(xy);B.if(xy)x;y;C.if(x=y)&(x!=0)x=y;D.if(x
13、!=y) scanf(%d,&x); else scanf(%d,&y);【参考答案】: C35.下列哪个是字符写函数( )。A.fgetcB.fputcC.fgetsD.fwrite【参考答案】: B36.设有如下程序 # include main() char ch1=A,ch2=a; printf(%cn,(ch1,ch2); 则下列叙述正确的为( )A.程序的输出结果为大写字母AB.程序的输出结果为小写字母aC.运行时产生错误信息D.格式说明符的个数少于输出项的个数,编译出错【参考答案】: B37.判断字符串a是否大于b,应当使用( )A.if (ab)B.if (strcmp(a,b
14、)C.if (strcmp(b,a)0)D.if (strcmp(a,b)0)【参考答案】: D38.main( ) int n=4; while(n)printf(%d ,-n); 以上程序的输出结果是( )。A.2 0B.3 1C.3 2 1 0D.2 1 0【参考答案】: C39.已知字母A的ASCII码为十进制数65,且定义c2为字符型变量,则执行语句c2=A+6-3;后,c2中的值为( )A.DB.68C.不确定的值D.C【参考答案】: A40.下列哪个是读写文件出错检测函数( )。A.ferrorB.clearerrC.feofD.fwrite【参考答案】: A41.在源程序中,/*与*/之间的注释信息也被编译,但对程序运行运果不发生影响。( )A.错误B.正确【参考答案】: A42.字符常数和字符串常数的存储是相同的,都是以字符的码值进行存放。