南开18秋学期(清考)《C语言程序设计》在线作业答案满分答案
18秋学期(清考)《C语言程序设计》在线作业-0003
试卷总分:100 得分:0
一、 单选题 (共 40 道试题,共 80 分)
1.当把以下四个表达式用作if语句的控制表达式时,有一个选项与其它三个选项含义不同,这个选项是
A.k%2
B.k%2==0
C.(k%2)!=0
D.!(k%2==0)
2.putchar函数可以向终端输出一个:
A.整型变量表达式值
B.实型变量值
C.字符串
D.字符或字符型变量值
3.x=-2; y=-1; if(x!=0) if(x>0) y=1; else y=0; 该程序段的输出结果为( )。
A.1
B.0
C.-1
D.不确定
4.已知字母A的ASCII码为十进制数65,且定义c2为字符型变量,则执行语句c2='A'+'6'-'3';后,c2中的值为( )
A.D
B.68
C.不确定的值
D.C
5.fscanf函数的正确调用形式是( )。
A.fscanf(文件指针,格式字符串,输出表列)
B.fscanf(格式字符串,输出表列, fp)
C.fscanf(格式字符串,文件指针,输出表列)
D.fscanf(文件指针,格式字符串,输入表列)
6.#include “stdio.h” void main() { int sum=0,a=1; while(a<=10) {sum=sum+a; a++; } printf(“sum=%d\n”,sum); } 以上程序段的运行结果是( )
A.sum=0
B.sum=55
C.sum=10
D.sum=11
7.下列函数调用中,不正确的是( )
A.max(a,b)
B.max(3,a+b)
C.max(3,5)
D.int max(a,b)
8.C语言结构体类型变量在程序执行期间( )。
A.所有成员一直驻留在内存中
B.只有一个成员驻留在内存中
C.部分成员驻留在内存中
D.没有成员驻留在内存中
9.main() {struct date {int year,month,day;}today; printf("%d\n",sizeof(struct date));} 以上程序的运行结果是( )
A.6
B.8
C.10
D.12
10.下列哪个是读写文件出错检测函数( )。
A.ferror
B.clearerr
C.feof
D.fwrite
11.设有以下说明语句 struct stu {int a;float b;}stutype; 则以下叙述不正确的是( )
A.stutype 是用户定义的结构体类型名
B.a 和 b 都是结构体成员名
C.struct 是结构体类型的关键字
D.struct stu 是用户定义的结构体类型
12.下面4个选项中,均是不合法的用户标识符的选项是( )
A.A P_0 do
B.float a0 _A
C.b-a 123 int
D._123 temp INT
13.若定义语句:int a=7;float x=2.5;y=4. 7; 则表达式x+a%3*(int)(x+y)%2/4的值是( )
A.2.500000
B.2.750000
C.3.500000
D.0.000000
14.已有定义 int a=-2;和输出语句:printf("%8lx",a);以下正确的叙述是:
A.整型变量的输出格式符只有%d一种
B.%x 是格式符的一种,它可以适用于任何一种类型的数据
C.%x 是格式符的一种,其变量的值按十六进制输出,但%8lx 是错误的
D.%8lx 不是错误的格式符,其中数字8规定了输出字段的宽度
15.下列关于数组的特征错误的是( )。
A.先定义后使用
B.可以有多维
C.定义数组长度时可以用常量或变量
D.可以作参数传递
16.以下符合C语言语法的赋值表达式是( )
A.d=9+e+f=d+9
B.d=9+e,f=d+9
C.d=9十e,e++,d十9
D.d=9十e++=d十7
17.以下不正确的语句为( )
A.if(x>y);
B.if(x>y){x++;y++;}
C.if(x=y)&&(x!=0)x+=y;
D.if(x!=y) scanf("%d",&x); else scanf("%d",&y);
18.在C语言中,int、char和short三种类型的数据在内存中所占用的字节数( )。
A.由用户自己定义
B.均为2个字节
C.是任意的
D.由所用机器的机器字长决定
19.以下对一维整型数组 a 的正确说明是( )
A.int a(10) ;
B.int n=10,a[n];
C.int n;
D.define SIZE 10 int a[SIZE];
20.main() { int x,y,z; scanf (“%d%d%d”,&x,&y,&z); printf(“x+y+z=%d\n”,x+y+z); } 输入数据的形式是25,13,10<回车>,则程序的输出结果是( )
A.x+y+z=48
B.x+y+z=35
C.x+z=35
D.不确定值
21.若有以下定义语句 union data {int l; char c; float f;}a; int n;则以下语句正确的是( )
A.a=5;
B.a={2,'a',1.2};
C.printf("%d\n",a.l);
D.n=a;
22.若有以下定义语句:int a[10]={1,2,3,4,5,6,7,8,9,10}; 则下列哪个是对该数组元素的正确引用( )
A.a[10]
B.a[a[3]-5]
C.a[a[9]]
D.a[a[4]+4]
23.变量的指针,其含义是指该变量的( )
A.地址
B.值
C.名字
D.标识
24.若已有定义int x=2; int *p=&x;则*p的值为( )
A.2
B.&x
C.*x
D.&p
25.若有定义char str[]= “very good”,则str的长度为( )
A.8
B.9
C.10
D.11
26.fgetc函数的作用是从指定文件读入一个字符,该文件的打开方式必须是( )
A.只写
B.追加
C.读或读写
D.答案B和C都正确
27.已知p,p1为指针变量,a为数组名,i为整型变量,下列赋值语句中不正确的是( )
A.p=&i
B.p=p1
C.p=&a[i]
D.p=10
28.#include<stdio.h> main() {union { long a; int b; char c;}m; printf("%d\n",sizeof(m));} 以上程序的运行结果是( )。
A.2
B.4
C.6
D.8
29.C程序的执行从哪里开始( )
A.第一条语句
B.第一个函数
C.最后一个函数
D.主函数
30.int k=1; while (k<=10); 上述语句执行后,变量k的值是( )。
A.10
B.11
C.9
D.无限循环,值不定
31.一个源程序文件由一个或多个什么组成( )
A.语句
B.函数
C.程序块
D.子程序
32.若调用fputc函数输出字符成功,则其返回值是( )
A.EOF
B.1
C.0
D.输出的字符
33.若要打开D盘上user文件夹下名为abc.txt的文本文件进行读、写操作,符合此要求的函数调用是( )
A.fopen("D:\\user\\abc.txt","r")
B.fopen("D:\user\abc.txt","w")
C.fopen("D:\\user\\abc.txt","r+")
D.fopen("D:\user\abc.txt","rb")
34.以下对C语言中共用体类型数据的叙述正确的是( )
A.可以对共用体变量名直接赋值
B.一个共用体变量中可以同时存放其所有成员
C.一个共用体变量中不能同时存放其所有成员
D.共用体类型定义中不能出现结构体类型的成员
35.从用户使用的角度看,函数有两种,它们是( )
A.库函数和用户自定义函数
B.库函数和主函数
C.用户自定义函数和主函数
D.主函数和子函数
36.在 C 语言中,引用数组元素时,其数组下标的数据类型允许是( )。
A.整型常量
B.整型表达式
C.整型常量或整型表达式
D.任何类型的表达式
37.在C语言中,char型数据在内存中的存储形式是( )
A.补码
B.反码
C.原码
D.ASCII码
38.下列哪个是字符写函数( )。
A.fgetc
B.fputc
C.fgets
D.fwrite
39.下面正确的字符常量是( )
A."c"
B."\\"
C.'W'
D.''(中间没有空格)
40.C语言中规定,if语句的嵌套结构中,else总是与( )配对
A.与最近的if 配套
B.与第一个if 配套
C.按缩进位置相同的if配套
D.与最近的且尚未配对的if 配套
南开18秋学期(清考)《C语言程序设计》在线作业答案多选题答案
二、 判断题 (共 10 道试题,共 20 分)
1.赋值表达式c=b=a=3是错误的。( )
A.错误
B.正确
2.在Visual C中,实型数据在内存中占4个字节。( )
A.错误
B.正确
3.C程序是由函数构成的,每一个函数完成相对独立的功能。( )
A.错误
B.正确
4.字符常数和字符串常数的存储是相同的,都是以字符的ASCII码值进行存放。( )
A.错误
B.正确
5.在Turbo C++中,字符型数据在内存中占1个字节。( )
A.错误
B.正确
6.在Turbo C++中,存储字符串常数时所占内存空间是不固定。( )
A.错误
B.正确
7.C语言采用解释方式将源程序转换为二进制的目标代码。( )
A.错误
B.正确
8.用C语言可直接进行位运算和取地址等运算,因此C语言是一种低级语言。( )
A.错误
B.正确
9.字符型数据和整数之间是不可以通用的。( )
A.错误
B.正确
10.在C源程序中,/*与*/之间的注释信息也被编译,但对程序运行运果不发生影响。( )
A.错误
B.正确
南开18秋学期(清考)《C语言程序设计》在线作业答案历年参考题目如下: