21秋地大《C语言程序设计(新)》在线作业二[答案]答案
地大《C语言程序设计(新)》在线作业二 -0008
试卷总分:100 得分:100
一、单选题 (共 15 道试题,共 60 分)
1.已知int x;float y;则下列表达式的值为1.5的是________。
A.x=3/2.0
B.x=3/2
C.y=3/2
D.y=3/2.0
正确答案:-----
2.假定p是具有double类型的指针变量,则表达式++p使p的值(以字节为单位)增加____
正确答案:-----
A.1
B.4
C.sizeof(double)
正确答案:-----
D.sizeof(p)
正确答案:-----
3.以下叙述中不正确的是____.
A.在一个函数中,可以有多条return语句
B.函数的定义不能嵌套,但函数的调用可以嵌套
C.函数必须有返回值
D.不同的函数中可以使用相同名字的变量
正确答案:-----
4.有以下程序片段 int n=0,p; do { scanf(%d",&p); n++; } while(p!=12345&&n<3); 此处 do-while 循环的结束条件是()
正确答案:-----
A.p的值不等于12345并且n的值小于3
B.p的值等于12345并且n的值大于等于3
C.p的值不等于12345或且n的值小于3
D.p的值等于12345或且n的值大于等于3
正确答案:-----
5.若有说明语句:int w=2,x=3,y=3,z=4;则表达式w>x?w:z>y?z:x的值是
A.4
B.3
C.2
D.1
正确答案:-----
6.以下叙述中错误的是
A.对于double类型数组,不可以直接用数组名对数组进行整体输入或输出
正确答案:-----
B.数组名代表的是数组所占存储区的首地址,其值不可改变
C.当程序执行中,数组元素的下标超出所定义的下标范围时,系统将给出“下标越界”的出错信息
正确答案:-----
D.可以通过赋初值的方式确定数组元素的个数
正确答案:-----
7.设有如下定义:int (*ptr) ();则以下叙述中正确的是______。
A.ptr是指向一维数组的指针变量
B.ptr是指向int型数据的指针变量
C.ptr是指向函数的指针,该函数返回一个int型数据
D.ptr是一个函数名,该函数的返回值是指向int型数据的指针
正确答案:-----
8.下列数组定义正确的是________
A.int a[5],b[2,3]
B.char no(30)
C.char x[]
D.int x[5]={1,2,3};
正确答案:-----
9.用C语言编制的源程序要变为目标程序,必须经过
A.编辑
B.编译
C.解释
D.连接
正确答案:-----
10.若变量已正确说明为int类型,要给a,b,c输入数据,以下语句正确的是
A.read(a,b,c);
正确答案:-----
B.scanf(“%d%d%d”,a,b,c);
正确答案:-----
C.scanf(“%D%D%D”,&a,%b,%c);
正确答案:-----
D.scanf(“%d%d%d”,&a,&b,&c);
正确答案:-----
11.当说明一个结构变量时,系统分配给它的内存是
A.各成员所需内存量的总和
B.结构中第一个成员所需内存量
C.成员中占内存量最大的成员所需的容量
D.结构中最后一个成员所需内存量
正确答案:-----
12.已知字符'b'的ASCII码为98,语句printf("%d,%c",'b','b'+1 );的输出为
正确答案:-----
A.98,b
B.语句不合法
C.98,99
D.98,c
正确答案:-----
13.以下函数的返回结果是( ). int function(char *x) { char *p=x; while(*p++); return(p-x-1); }
A.求字符串的长度
B.将字符串x连接到字符串p后面
C.将字符串x复制到字符串p
D.将字符串x反向存放
正确答案:-----
14.设有定义:int a,*pa=&a;以下scanf语句中能正确为变量a读入数据的是
A.scanf(“%d”,pa)
正确答案:-----
B.scanf(“%d”,a)
正确答案:-----
C.scanf(“%d”,&pa)
正确答案:-----
D.scanf(“%d”,*pa);
正确答案:-----
15.不合法的八进制数是()
A.0
B.028
C.077
D.01
正确答案:-----
21秋地大《C语言程序设计(新)》在线作业二[答案]多选题答案
二、判断题 (共 10 道试题,共 40 分)
16.在C程序中,APH和aph是两个不同的变量。
17.C程序中的注释部分可有可无,通常可以省略。
21.数据结构指的是数据的组织形式,数组就是一种数据结构( )
19.switch语句中,多个case可以共用一组执行语句。( )
20.C语言规定必须用main作为主函数名
21.continue语句只能用于循环语句中。
22.使用printf和scanf函数时,必须添加#include <stdio.h>命令。( )
正确答案:-----
23.指针变量可以有空值,即该指针变量不指向任何变量
24.用一个标识符代表一个常量的称为符号常量,符号常量不同于变量,它的值在其作用域内不能改变,也不能再被赋值。( )
25.所有函数都是平行的,函数间可以相互调用,但不能调用main函数。( )
21秋地大《C语言程序设计(新)》在线作业二[答案]历年参考题目如下:
地大《C语言程序设计(新)》在线作业二
一,单选题
1. 若定义了函数 double *function(), 则函数function的返回值为____.
A. 实数型
B. 实数的地址
C. 指向函数的指针
D. 函数的地址
?
正确答案:B
2. 如果有char* ssl=“0123456789”,则,sizeof(ssl)的值是()
A. 4
B. 10
C. 11
D. 40
?
正确答案:A
3. 以下对C语言函数的有关描述中,正确的是:______。( )
A. 调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参
B. 函数既可以嵌套定义又可以递归调用
C. 函数必须有返回值,否则不能使用函数
D. 程序中有调用关系的所有函数必须放在同一个源程序文件中
?
正确答案:A
4. 若有说明语句:int w=2,x=3,y=3,z=4;则表达式w>x?w:z>y?z:x的值是
A. 4
B. 3
C. 2
D. 1
?
正确答案:A
5. 表达式:10!=9的值是()
A. true
B. 非零值
C. 0
D. 1
?
正确答案:D
6. 下列说法中正确的是
A. 在switch语句中一定要使用break语句
B. 在switch语句中不一定要使用break语句
C. break语句是switch语句的一部分
D. break只能用于switch语句中
?
正确答案:B
7. 已知:int x,a,b;下列选项中错误的if语句是______。( )
A. if(a=b) x++;
B. if(a=<b) x++;
C. if(a-b) x++;
D. if(x) x++;
?
正确答案:B
8. 设变量定义为“int s[ ]="hello world ";”,则数组s中有()个元素。
A. 12
B. 13
C. 14
D. 15
?
正确答案:B
9. 结构化程序设计的基本结构不包含以下哪项()
A. 顺序
B. 选择
C. 跳转
D. 循环
?
正确答案:C
10. 以下正确的叙述是
A. C语言的主函数是无参函数
B. C语言的主函数最多允许有1个参数
C. C语言的主函数最多允许有2个参数
D. C语言的主函数可以有2个以上参数
?
正确答案:D
11. 简单变量做实参时,实参与其对应的形参之间的数据传递方式是_______
A. 双向值传递方式
B. 地址传递方式
C. 单向值传递方式
D. 用户指定传递方式
?
正确答案:C
12. 以下叙述中不正确的是____.
A. 在一个函数中,可以有多条return语句
B. 函数的定义不能嵌套,但函数的调用可以嵌套
C. 函数必须有返回值
D. 不同的函数中可以使用相同名字的变量
?
正确答案:C
13. 对于C程序的函数,下列叙述中正确的是
A. 函数的定义不能嵌套,但函数调用可以嵌套
B. 函数的定义可嵌套,但函数的调用不能嵌套
C. 函数的定义和调用均不能嵌套
D. 函数的定义和调用均可嵌套
?
正确答案:A
14. 当调用函数时,实参是一个数组名,则向函数传送的是 ( )
A. 数组的长度
B. 数组的首地址
C. 数组每一个元素的地址
D. 数组每个元素中的值
?
正确答案:B
15. 若有 char c[5]={'c','d','\0','e','\0'};则执行语句printf("%s",c);结果是( )。
A. cd\0e
B. 'c''d'
C. cd
D. cd e
?
正确答案:C
16. 为了避免嵌套的条件分支语句的二义性,C语言规定,C程序中的else总是与()组成配对关系。
A. 缩排位置相同的if
B. 在其之前末配对的if
C. 在其之前末配对的最近的if
D. 同一行上的if
?
正确答案:C
17. 当说明一个结构变量时,系统分配给它的内存是
A. 各成员所需内存量的总和
B. 结构中第一个成员所需内存量
C. 成员中占内存量最大的成员所需的容量
D. 结构中最后一个成员所需内存量
?
正确答案:A
18. 在c语言中,运算对象必须是整型数的运算符是()
A. %
B.
C. %和
D. **
?
正确答案:A
19. 下面程序的结果是什么?Int i=3,j=4;i?i++:j++;printf(“%d %d ”,i,j);
A. 3 3
B. 4 4
C. 3 4
D. 4 3
?
正确答案:B
20. 设n=3;则执行 ++n语句后,n的值为_____。( )
A. 5
B. 4
C. 3
D. 2
?
正确答案:B
21. 以下函数的返回结果是( ). int function(char *x) { char *p=x; while(*p++); return(p-x-1); }
A. 求字符串的长度
B. 将字符串x连接到字符串p后面
C. 将字符串x复制到字符串p
D. 将字符串x反向存放
?
正确答案:A
22. 以下______是错误的转义字符。( )
A. '
B. ''
C. '81'
D. '\0'
?
正确答案:C
23. 在C语言中,while语句中的条件为()时,结束该循环。
A. 0
B. 1
C. true
D. 非0
?
正确答案:A
24. 以下选项中属于C语言的数据类型是( )
A. 复数型
B. 逻辑型
C. 集合型
D. 双精度型
?
正确答案:D
25. 若用数组名作为函数调用时实参,则实际上传递给形参的是_____
A. 数组首地址
B. 数组的第一个元素值
C. 数组元素的个数
D. 数组中全部元素的值
?
正确答案:A