南开16秋学期《C语言程序设计》在线作业满分答案
南开16秋学期《C语言程序设计》在线作业一、单选题:
1.下面4个选项中,均是不合法的用户标识符的选项是( ) (满分:2)
A. AP0do
B. floata0A
C. b-a123int
D. 123tempINT
2.已知p,p1为指针变量,a为数组名,i为整型变量,下列赋值语句中不正确的是( ) (满分:2)
A. p=&i
B. p=p1
C. p=&a
D. p=10
3.struct person {char name; int age;}; struct person class={"John",17,"Paul",19,"Mary"18,"adam",16}; 根据上面的定义,能打印出字母M的语句是( )。 (满分:2)
A. printf("%c\n"
class.name);
B. printf("%c\n"
class.name);
C. printf("%c\n"
class.name);
D. printf("%c\n"
class.name)
4.若有以下定义语句 union data {int l; char c; float f;}a; int n;则以下语句正确的是( ) (满分:2)
A. a=5;
B. a={2
'a'
1.2};
C. printf("%d\n"
a.l);
D. n=a;
5.若以”a+”方式打开一个已存在的文件,则以下叙述正确的是( )。 (满分:2)
A. 文件打开时,原有文件内容不被删除,位置指针移到文件末尾,可作添加和读操作。
B. 文件打开时,原有文件内容被删除,位置指针移到文件开头,可作重新写和读操作。
C. 文件打开时,原有文件内容被删除,只可作写操作。
D. 以上各种说法皆不下确。
6.已知字母A的ASCII码为十进制数65,且定义c2为字符型变量,则执行语句c2='A'+'6'-'3';后,c2中的值为( ) (满分:2)
A. D
B. 68
C. 不确定的值
D. C
7.若已有定义int x=2; int *p=&x;则*p的值为( ) (满分:2)
A. 2
B. &x
C. *x
D. &p
8.关于return语句,下列说法正确的是( )。 (满分:2)
A. 不能在主函数中出现
B. 必须在每个函数中出现
C. 可以在同一个函数中出现多次
D. 只能在除主函数之外的函数中再出现一次
9.C语言的函数中,( )。 (满分:2)
A. 必须有形参
B. 形参必须是变量名
C. 可以有也可以没有形参
D. 数组名不能作形参
10.设有如下程序 # include main( ) {char ch1='A',ch2='a';printf("%c\n",(ch1,ch2)); } 则下列叙述正确的为( ) (满分:2)
A. 程序的输出结果为大写字母A
B. 程序的输出结果为小写字母a
C. 运行时产生错误信息
D. 格式说明符的个数少于输出项的个数,编译出错
11.以下叙述中错误的是: (满分:2)
A. 局部变量的定义可以在函数体内部
B. 全局变量的定义可以在函数以外的任何位置
C. 同一程序中,全局变量和局部变量不能同名
D. 函数的形参属于局部变量
12.下面4个选项中,均是C语言关键字的选项是( )。 (满分:2)
A. auto enum include
B. switch typedef continue
C. signed union scanf
D. if struct type
13.下列哪个是字符写函数( )。 (满分:2)
A. fgetc
B. fputc
C. fgets
D. fwrite
14.fscanf函数的正确调用形式是( )。 (满分:2)
A. fscanf(文件指针
格式字符串,输出表列)
B. fscanf(格式字符串,输出表列, fp)
C. fscanf(格式字符串,文件指针,输出表列)
D. fscanf(文件指针,格式字符串,输入表列)
15.一个源程序文件由一个或多个什么组成( ) (满分:2)
A. 语句
B. 函数
C. 程序块
D. 子程序
16.C语言结构体类型变量在程序执行期间( )。 (满分:2)
A. 所有成员一直驻留在内存中
B. 只有一个成员驻留在内存中
C. 部分成员驻留在内存中
D. 没有成员驻留在内存中
17.main( ) {int x=2,y=-1,z=2;if(x<y) if(y<0) z=0; else z+=1;printf("%d\n",z); } 以上程序的输出结果为( )。 (满分:2)
A. 3
B. 2
C. 1
D. 0
18.当把以下四个表达式用作if语句的控制表达式时,有一个选项与其它三个选项含义不同,这个选项是 (满分:2)
A. k%2
B. k%2==0
C.(k%2)!=0
D. !(k%2==0)
19.int k=1;while(k<=10); 上述语句执行后,变量k的值是( )。 (满分:2)
A. 10
B. 11
C. 9
D. 无限循环,值不定
20.若有定义char str[]= “very good”,则str的长度为( ) (满分:2)
A. 8
B. 9
C. 10
D. 11
21.数组名作为实参传递给形参时,数组名被处理为( ) (满分:2)
A. 该数组的长度
B. 该数组的元素个数
C. 该数组的首地址
D. 该数组中各元素的值
22.x=-1;do { x=x*x; }while(x); 以上程序段( ) (满分:2)
A. 是死循环
B. 循环执行2次
C. 循环执行1次
D. 有语法错误
23.下列哪个是读写文件出错检测函数( )。 (满分:2)
A. ferror
B. clearerr
C. feof
D. fwrite
24.fgetc函数的作用是从指定文件读入一个字符,该文件的打开方式必须是( ) (满分:2)
A. 只写
B. 追加
C. 读或读写
D. 答案B和C都正确
25.已知学生记录描述为 struct student {int no; char name; char sex; struct {int year; int month; int day;}birth;}; struct student s; 设变量s中的“生日”应该是“1984年11月11日”,下列对“生日”的正确赋值方式是( )。 (满分:2)
A. year=1984; month=11; day=11;
B. birth.year=1984; birth.month=11; birth.day=11;
C. s.year=1984; s.month=11; s.day=11;
D. s.birth.year=1984; s.birth.month=11; s.birth.day=11;
26.当把以下四个表达式用作if语句的控制表达式时,有一个选项与其它三个选项含义不同,这个选项是 (满分:2)
A. k%2
B. k%2==0
C.(k%2)!=0
D. !(k%2==0)
27.变量的指针,其含义是指该变量的( ) (满分:2)
A. 地址
B. 值
C. 名字
D. 标识
28.putchar函数可以向终端输出一个: (满分:2)
A. 整型变量表达式值
B. 实型变量值
C. 字符串
D. 字符或字符型变量值
29.以下不正确的叙述是( ) (满分:2)
A. 在C程序中
逗号运算符的优先级最低
B. 在C程序中
APH和aph是两个不同的变量
C. 若a和b类型相同
在执行了赋值表达式a=b后b中的值将放人a中
而b中的值不变。
D. 当从键盘输入数据时
对于整型变量只能输入整型数值
对于实型变量只能输入实型数值。
30.若执行fopen函数时发生错误,则函数的返回值是( ) (满分:2)
A. 地址值
B. null
C. 1
D. EOF
31.已知各变量的类型说明如下:int i=8,k,a,b;unsigned long w=5;double x=1.42,y=5.2;则以下符合C语言语法的表达式是: (满分:2)
A. a十=a一=(b= 4)*(a=3)
B. a=a*3=2
C. x%(一3)
D. y=f1oat(i)
32.若已有定义int x;下列说明指针变量p指向x的正确语句是( ) (满分:2)
A. int p=&x;
B. int *p=&x;
C. int p=x;
D. int *p=x;
33.下面正确的字符常量是( ) (满分:2)
A. "c"
B. "\\"
C. 'W'
D. ''(中间没有空格)
34.main( ) {struct date {int year,month,day;}today; printf("%d\n",sizeof(struct date));} 以上程序的运行结果是( ) (满分:2)
A. 6
B. 8
C. 10
D. 12
35.设以下变量均为int类型,则值不等于7的表达式是( ) (满分:2)
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)
36.当不能正确执行文件关闭操作时,fclose函数的返回值是( )。 (满分:2)
A. -1
B. EOF
C. TRUE
D. 1
37.以下符合C语言语法的赋值表达式是( ) (满分:2)
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
38.下列关于数组的特征错误的是( )。 (满分:2)
A. 先定义后使用
B. 可以有多维
C. 定义数组长度时可以用常量或变量
D. 可以作参数传递
39.在 C 语言中,引用数组元素时,其数组下标的数据类型允许是( )。 (满分:2)
A. 整型常量
B. 整型表达式
C. 整型常量或整型表达式
D. 任何类型的表达式
40.下面不正确的字符串常量是( )。 (满分:2)
A. abc'
B. "12'12"
C. "0 "
D. " "
三、判断题:
1.在Visual C中,整型数据在内存中占2个字节。( ) (满分:2)
A. 错误
B. 正确
2.赋值表达式c=b=a=3是错误的。( ) (满分:2)
A. 错误
B. 正确
3.被main函数调用的函数只能是库函数。( ) (满分:2)
A. 错误
B. 正确
4.在C语言中,字母的大小写不被区分。( ) (满分:2)
A. 错误
B. 正确
5.字符常数和字符串常数的存储是相同的,都是以字符的ASCII码值进行存放。( ) (满分:2)
A. 错误
B. 正确
6.对整型常量可进行自加或自减运算,而对变量或表达式不可以。( ) (满分:2)
A. 错误
B. 正确
7.在Turbo C++中,存储字符串常数时所占内存空间是不固定。( ) (满分:2)
A. 错误
B. 正确
8.用C语言可直接进行位运算和取地址等运算,因此C语言是一种低级语言。( ) (满分:2)
A. 错误
B. 正确
9.PI可作为标识符使用。( ) (满分:2)
A. 错误
B. 正确
10.字符型数据和整数之间是不可以通用的。( ) (满分:2)
A. 错误
B. 正确
**** Hidden Message *****
页:
[1]