20春《C语言》在线作业1
试卷总分:100 得分:100
一、单选题 (共 10 道试题,共 50 分)
1.有定义:float y,*p=&y;,假定变量y在内存中所占地址为100~103。那么p的值为( )
A.100
B.101
C.102
D.103
2.若调用一个函数,且此函数中没有return语句,关于该函数则正确的说法是( )
A.没有返回值
B.返回若干个系统默认值
C.能返回一个用户所希望的函数值
D.返回一个不确定的值
3.在对文件进行操作的过程中,若要求文件的位置回到文件的开头,应当调用的函数是( )
A.fopen( )
B.fseek( )
C.fclose( )
D.rewind( )
4.下面程序的功能是用递归法将一个整数存放到一个字符数组中。存放时按逆序存放。如483存放成"384",请选择填空( ) #include void convert(char *a,int n) {int i; if((i=n/10)!=0) convert(a+1,i); *a=【2】; } main() {int number; char str[10]=" "; scanf("%d",&number); convert(str,number);
A.n/10
B.n%10
C.n/10+'0'
D.n%10+'0'
5.下面程序的功能是把316表示为两个加数的和,使两个加数分别能被13和11整除。请选择填空( ) #include main() {int i=0,j,k; do{ i++;k=316-13*i;} while(【1】);j=k/11; printf(" 316=13* %d+11*%d",i,j);}
A.k/11
B.k%11
C.k/11==0
D.k/11== 0
6.以下程序的输出结果是( ) main() {int x= 2,y=-1,z=2; if (x
A.3
B.2
C.1
D.0
7.对break语句的正确描述是
A.break语句在while语句中,立即终止执行while语句
B.break语句不能用于循环语句之外的语句
C.break语句与continue语句功能相同
D.break语句可以带参数,也可以不带
8.设C语言中,-个int型数据在内存中占2个字节,则unsigned int型数据的取值范围为( )
A.0~255
B.0~32767
C.0~65535
D.0~2147483647
9.移位运算符”<
A.从一个变量移动到另一个变量
B.移位运算符”<
C.按二进位移位运算,限定为整型数据和字符型数据
D.按二进位移位运算,限定为整型数据
10.若用数组名作为函数调用的实参,传递给形参的是( )
A.数组的首地址
B.数组第一个元素的值
C.数组中全部元素的值
D.数组元素的个数
二、多选题 (共 5 道试题,共 25 分)
11.以下关于C源程序文件的说法中正确的是( )
A.是一种二进制文件
B.是一种文本(ASCII码)文件
C.可以用DOS的type命令显示其内容
D.文件扩展名一般为c
12.以下数据类型在内存中占用4个字节的是( )
A.int
B.unsigned long
C.float
D.unsigned char
13.下列符号中可以用作自定义函数名的是( )
A.int
B.go_to
C.INT
D.Getchar
E.typedef
14.在下面C语言的函数说明语句中,正确的是( )
A.int fun(int , int);
B.int fun(int x,y);
C.int fun(x,y);
D.int fun(int x; int y);
E.int fun(int x,int y);
15.定义char s[81]; 后,能正确输入一个字符串到数组s的语句是( )
A.gets(s);
B.scanf (”%c”,s);
C.scanf (”%s”,&s[0]);
D.gets(&s[0]);
三、判断题 (共 5 道试题,共 25 分)
16.在内存中存储结构体类型的变量要占连续一段的存储单元。
17.C语言允许main函数带形参,且形参个数和形参名均可由用户指定。
18.用C语言可直接进行位运算和取地址等运算,因此C语言是一种低级语言。
19.用户可以重新定义标准库函数,若如此,该函数将失去原有含义。
20.函数即可以嵌套定义,又可以嵌套调用。