c选择题判断题(1)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
判断题
1.C语言源程序文件是可执行文件。(×)
2.语言源程序文件必须通过编译连接才能运行。(√)
3.C语言源程序文件通过编译得到的目标文件是可执行文件。(×)
4.可以由多个目标文件连接得到可执行文件。(√)
5.C语言源程序只能是一个单独的文件。(×)
6.C语言源程序有且只有一个main()函数。(√)
7.最简单的C语言源程序可以不包含任何函数。(×)
8.C语言源程序可以由多个函数组成,根据函数在文件中的先后秩序依次执行。(×)
9.C语言源程序由预处理命令、说明语句和函数组成。(√)
10.C语言源程序由语句组成,按语句在文件中的先后秩序依次执行。(×)
11.C语言自定义函数由语句组成,按语句在文件中的先后秩序依次执行。(√)
12.C语言自定义函数中可以定义变量、函数、宏。(√)
13.C语言自定义函数由预处理命令、说明语句和表达式语句组成。(√)
14.C语言自定义函数中说明语句必须放在所有表达式语句之前。(√)
16.C语言中函数说明可以放在调用函数中,也可以放在所有函数之外。(√)
16.C语言中函数和变量必须先定义后使用,但可以通过函数和变量的说明扩充作用域。(√)
17.C语言中标识符可用作变量名、函数名、宏名。(√)
18.C语言中由字母、数字下划线组成的符号都是标识符。(×)
19.C语言中所有关键字、预定义标识符都不可用作用户自定义标识符。(×)
20.C语言标识符不可包含空格。(√)
21.C语言标识符的默认类型是int类型的变量。(×)
22.C语言标识符中字母不区分大小写。(×)
23.C语言标识符第一个字符只能是字母。(×)
24.C语言中自定义函数只能有一个返回值,所以不能改变调用函数中一个以上的变量的值。(×)
25.C语言中函数参数传递是值传递,所以不能交换调用函数中两个变量的值。(×)
26.C语言中函数形式参数属于局部变量。(√)
27.主函数中的变量属于全局变量,可以在所有函数中访问。(×)
28.静态变量的生存期与应用程序相同,可以在所有函数中访问。(×)
单项选择题
1.设以下变量均为int类型,则值不等于7的表达式是( C )。
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.(x=6,x+1,y=x,y+1)
2.设变量a是整型,b是实型,c是双精度型,则表达式10+'a'+b*c值的数据类型为( C )。
A.int
B.float
C.double
D.不确定
3.设有说明:char w; int x; float y; double z; 则表达式w*x+z-y 值的数据类型为( D )。
A.float
B.char
C.int
D.double
4.使用语句scanf("x=%f,y=%f",&x,&y);输入变量x、y的值(□代表空格),正确的输入是___C_。
A.1.25,2.4
B.1.25□2.4
C.x=1.25,y=2.4
D.x=1.25□y=2.4
5.C语言中while和do-while循环的主要区别是( A ).
A.do-while的循环体至少无条件执行一次
B.while的循环控制条件比do-while的循控制条件严格
C.do-while允许从外部转到循环体内
D.do-while的循环体不能是复合句
6.若有说明:int a[10];,则对a数组最前面一个元素的正确引用是( D )。
A.a[10]
B.a[3.5]
C.a(5)
D.a[10-10]
7.以下对二维数组a进行初始化的语句错误的是( C )。
A.int a[2][3]={0};
B.int a[][3]={{1,2},{0}};
C.int a[2][3]={{1,2},{3,4},{5,6}};
D.int a[][3]={1,2,3,4,5,6};
8.下述对C语言字符数组的描述中错误的是( C )
A.字符数组可以存放字符串
B.字符数组中的字符串可以整体输入、输出
C.可以在赋值语句中通过赋值运算符"="对字符数组整体赋值
D.不可以用关系运算符对字符数组中的字符串进行比较
9.设i和x 都是int类型,则以下for循环( A )
for(i=0,x=0;i<=9&&x!=876;i++) scanf("%d",&x);
A.最多执行者10次
B.最多执行者9次
C.是无限循环
D.循环体一次也不执行
10.下面描述正确的是( D )。
A.两个字符串所包含的字符个数相同时,才能比较字符串
B.字符个数多的字符串比字符个数少的字符串大
C.字符串"stop"与"Stop"相等
D.字符串"that"小于字符串"the"
11.以下不正确的说法是( B )。
A.实参可以是常量、变量或表达式
B.形参可以是常量、变量或表达式
C.实参可以是任意类型
D.形参应与其对应的实参类型一致
12以下不正确的说法是( C)。
A.C语言允许函数的递归调用
B.C语言中的continue语句,可以通过改变程序的结构而省略
C. 有些递归程序是不能用非递归算法实现的
D. C语言中不允许在函数中再定义函数
13.下面函数调用语句中含有实参个数为( B )。
func((exp1,exp2),(exp2,exp4,exp5));
A.1
B.2
C.3
D.4
14.设有下面的语句和说明,则下列语句使用正确的是(B )。
char s[10]="china";
A.scanf("%s",s[0]);
B.gets(s);
C.gets(&s);
D.scanf("%c",s);
15.若有说明:int a[3][4];,则对a数组元素正确引用是( C )。
A.a[2][4]
B.a[1,3]
C.a[1+1][0]
D.a(2)(1)
16.已知函数定义如下:
float fun1(int x,int y)
{ float z;
z=(float)x/y;
return(z);
}
主调函数中有int a=1,b=0;可以正确调用此函数的语句是_A___。
A.printf("%f",fun1(a,b));
B.printf("%f",fun1(&a,&b));
B.C.printf("%f",fun1(*a,*b)); D.调用时发生错误
17.设n=10,i=4,则赋值运算n%=i+1执行后,n 的值是( A )。