点击查看:2015年计算机二级《C语言》最新章节练习题汇总
选择题
1、有如下程序
程序运行后的输出结果是
A.10,6,4,6
B.11,6.11,6
C.11,6,1,6
D.10,7,l,7
2、有以下程序
执行时输入:123。则输出结果是
A.2,3,3,4,5,6,
B.2.3,4,
C.2,2,3,4,4,4,
D.2,3,4,3,4,4,
3、有以下程序
程序的运行结果是
A.13,10,7,4,
B.1,6,11,16,
C.4,7,l0,13,
D.1,5,9,13,
4、设有定义:
int x=0,*p;
紧接着的赋值语句正确的是
A.*P=NULL;
B.P=NULL;
C.P=X;
D.*P=X;
5、由以下while构成的循环,循环体执行的次数是int k=0;
while(k=1)k++;
A.有语法错,不能执行
B.一次也不执行
C.执行一次
D.无限次
6、以下叙述中正确的是
A.字符串常量“strl”的类型是:字符串数据类型
B.有定义语句:char strl[]="strl";,数组strl将包含4个元素
C.下面的语句用赋初值方式来定义字符串,其中,′\O′是必须的
D.字符数组的每个元素可存放一个字符,并且最后一个元素必须是′\0′字符
7、若有以下程序
则程序的输出结果是
A.Qian,f,350,Qian,f,350
B.Zhao,m,290,Zha0,m,290
C.Zhao,m,290,Qian,f,350
D.Zhao,m,290,Zha0,f,350
8、有以下程序
程序运行后的输出结果是
A.1
B.1,-2,
C.3,0,
D.1,0
9、以下叙述中正确的是
A.在scanf函数中的格式控制字符串是为了输入数据用的,不会输出到屏幕上
B.在使用scanf函数输入整数或实数时,输入数据之间只能用空格来分隔
C.在Printf函数中,各个输出项只能是变量
D.使用Printf函数无法输出百分号%
10、有以下程序
程序运行后的输出结果是
A.5
B.50
C.6
D.60
11、 有以下程序
程序运行后的输出结果是
A.4
B.5
C.9
D.7
12、 以下叙述中正确的是
A.int*pl;int*p2;int*p3;都是合法的定义指针变量的语句
B.指针变量只能通过求地址运算符(&)来获得地址值
C.语句P=NULL;与P=、O;是等价的语句
D.语句P=NULL;执行后,指针P指向地址为0的存储单元
13、 以下叙述中正确的是
A.在一个程序中,允许使用任意数量的#include命令行
B.在包含文件中,不得再包含其他文件
C.#include命令行不能出现在程序文件的中间
D.虽然包含文件被修改了,包含该文件的源程序也可以不重新进行编译和连接
14、 若有定义int a:float b:double c;程序运行时输入:
345
能把值3输入给变量a、4输入给变量b、5输入给变量C的语句是
A.scanf("%d%f%If",&a,&b,&C.;
B.scanf("%d%If%If",&a,&b,&C.;
C.scanf("%d%f%f",&a,&b,&C.;
D.scanf("%If%If%If",&a,&b,&C.;
15、若有以下程序
则程序的输出结果是
A.1,10,3,8,5,6,7,4,9.2,
B.10,9,8,7,6,5,4,3,2,1,
C.2,9,4,7,6,5,8,3,10,1,
D.10,l,8,3,6,5,4,7,2,9,
16、 在32位编译器上,设有定义
则以下语句
prinff(”%d%d”,sizeof(strl),sizeof(str2));的输出结果是
A.5 6
B.5 5
C.6 6
D.4 6
17、 若有以下程序段
不能正确引用字符串的选项是
A.str[0]
B.strp
C.strp[3]
D.*strp
18、 以下叙述中正确的是
A.循环发生嵌套时,最多只能两层
B.三种循环for,while,do-while可以互相嵌套
C.循环嵌套时,如果不进行缩进形式书写代码,则会有编译错误
D.for语句的圆括号中的表达式不能都省略掉
19、以下叙述中正确的是
A.continue语句使得整个循环终止
B.break语句不能用于提前结束for语句的本层循环
C.使用break语句可以使流程跳出switch语句体
D.在for语句中,continue与break的效果是一样的,可以互换
20、以下叙述中正确的是
A.函数的返回值不能是结构体类型
B.在调用函数时,可以将结构体变量作为实参传给函数
C.函数的返回值不能是结构体指针类型
D.结构体数组不能作为参数传给函数
21、 设有定义
的输出结果是
A.5 5
B.6 6
C.6 5
D.5 6
22、 以下叙述中正确的是
A.任何情况下都不能用函数名作为实参
B.函数既可以直接调用自己,也可以间接调用自已
C.函数的递归调用不需要额外开销,所以效率很高
D.简单递归不需要明确的结束递归的条件
23、以下程序依次把从终端输入的字符存放到f文件中,用#作为结束输入的标志,则在横线处应填入的选项是
A.ch,”fname
”B.fp,ch
B.ch
C.ch,fp
24、 有以下程序
程序的输出结果是
A.a=2,b=5
B.a=%2,b=%5
C.a=%d,b=%d
D.a=%%d,b=%%d
25、 关于c语言函数说明的位置,以下叙述正确的是
A.在函数说明之后对该函数进行调用,编译时不会出现错误信息
B.函数说明可以出现在源程序的任意位置,在程序的所有位置对该函数的调用,编译时都不会出现错误信息
C.函数说明只能出现在源程序的开头位置,否则编译时会出现错误信息
D.函数说明只是为了美观和编译时检查参数类型是否一致,可以写也可以不写
26、 有以下程序
程序运行后的输出结果是
A.to Beijing!
B.you to Beijing!
C.Welcome you to Beijing!
D.Beijing!
27、有以下程序
程序运行后的输出结果是
A.11
B.10
C.1
D.2
28、 有以下程序
程序运行后的输出结果是
A.41;20;80;
B.41;22;64;
C.40;21;80;
D.43;20;81;
29、 有以下程序
程序运行后输出结果是
A.1,2,3,4,5,6,
B.6,5,4,3,2,1,
C.4,5,6,l,2,3,
D.1,2,3,3,2,1,
30、 以下叙述中错误的是
A.用typedef可以说明一种新的类型名
B.typedef的作用是用一个新的标识符来代表已存在的类型名
C.可以用typedef说明的新类型名来定义变量
D.typedef说明的新类型名必须使用大写字母,否则会出编译错误