奥鹏作业吉大20春学期《C语言程序设计》在线作业二
试卷总分:100 得分:100
一、单选题 (共 10 道试题,共 40 分)
1.sizeof(float)是
A.一个双精度型表达式
B.一个整型表达式
C.一种函数调用
D.一个不合法的表达式
2.下列程序的输出结果是 int b=2; int func(int *a) { b += *a; return(b);} main() { int a=2, res=2; res += func(&a); printf("%d\n",res); }
A.4
B.6
C.8
D.10
3.在16位IBM-PC机上使用C语言,若有如下定义 struct data { int i; char ch; double f; } b; 则结构变量b占用内存的字节数是
A.1
B.2
C.7
D.11
4.执行以下程序后,a,b的值分别为 main() { int a,b,k=4,m=6,*p1=&k,*p2=&m; a=p1==&m; b=(*p1)/(*p2)+7; printf("a=%d\n",a); printf("b=%d\n",b); }
A.-1,5
B.1,6
C.0,7
D.4,10
5.下列程序的输出结果是 main() { double d=3.2; int x,y; x=1.2; y=(x+3.8)/5.0; printf("%d\n", d*y); }
A.3
B.3.2
C.0
D.3.07
6.若有以下程序 #include int a[]={2,4,6,8}; main() { int i; int *p=a; for(i=0;i<4;i++)a[i]=*p; printf("%d\n",a[2]); } 上面程序输出结果是
A.6
B.8
C.4
D.2
7.有如下程序 int a[10]={1,2,3,4,5,6,7,8,9,10}; int *p=&a[3],b;b=p[5]; 则b的值是
A.5
B.6
C.9
D.8
8.设有以下语句: char x=3,y=6,z; z=x^y<<2; 则z的二进制值是
A.00010100
B.00011011
C.00011100
D.00011000
9.以下程序有语法错误,有关错误原因的正确说法是 main() { int G=5,k; void prt_char(); ... k=prt_char(G); ... }
A.语句 void prt_char();有错,它是函数调用语句,不能用void说明
B.变量名不能使用大写字母
C.函数说明和函数调用语句之间有矛盾
D.函数名不能使用下划线
10.下面程序段的运行结果是 char *format="%s,a=%d,b=%d\n"; int a=11,b=10; a+=b; printf(format,"a+=b",a,b);
A.for,"a+=b",ab
B.format,"a+=b"
C.a+=b,a=21,b=10
D.以上结果都不对
二、多选题 (共 5 道试题,共 20 分)
11.在文件操作中,用于检测和设置文件状态的函数有______。
A.文件结束检测函数feof()
B.读写文件出错检测函数ferror()
C.文件出错和结束标志文件函数才clearerr()
D.文件关闭函数fclose()
12.以下正确的C语言标识符是_____。
A.ABC
B.abc
C.a_bc
D.ab.c
13.关于实参和形参的说法正确的是______。
A.在定义函数中指定的形参,在未出现函数调用时,它们并不占内存中的存储单元
B.实参可以是变量、常量或表达式
C.实参与形参的类型应相同或赋值兼容
D.实参变量对形参变量的数据传递是“值传递”
14.已知:int x;,则下面的说明指针变量pb的语句______不是正确的。
A.int pb=&x;
B.int *pb=x;
C.int *pb=&x;
D.*pb=*x
15.下列字符中能构成标识符的是______。
A.数字字符
B.连接符
C.下划线字符
D.大写字母
三、判断题 (共 10 道试题,共 40 分)
16.puts和gets函数只能输入或输出一个字符串
17.共用体所占的内存空间大小取决于占空间最多的那个成员变量。
18.模运算符要求两侧均应为整型数据。( )
19.使用printf和scanf函数时,必须添加#include <stdio.h>命令。( )
20.‘ a’和“a”在内存中所占字节数相同。( )
21.使用符号常量的好处是:一,含义清楚,二,在需要改变一个常量时能做到“一改全改”( )
22.对于double类型数组,不可以直接用数组名对数组进行整体输入或输出。
23.C程序中各函数之间既允许直接递归调用也允许间接递归调
24.一个int型与一个double型数据进行混合运算时,其结果是double型。
25.C语言规定标识符可由字母、数字、下划线三种字符组成,第一个字符可以为数字或字母。( )