第 1 页:选择题 |
第 3 页:程序填空题 |
第 4 页:程序改错题 |
第 5 页:程序设计题 |
点击查看:2015计算机二级考试《C语言》冲刺试题及答案汇总
一、选择题
1有以下程序:
程序运行后的输出结果是( )。
A.1,6,2,1,B.8,7,3,1,C.4,7,5,2,D.1,6,5,7,
参考答案:D
参考解析:首先对二维数组进行赋值操作,a[0][0]、a[0][1]、…、a[3][2]、a[3][3]的值为l、4、…、6、1。通过for语句和if语句,对二维数组各列元素进行由小到大的排序操作,程序最后通过for语句输出二维数组对角线上的元素。因此D选项正确。
2有以下程序:
程序运行后的输出结果是( )。
A.2 3 4 4B.4 3 3 2C.1 2 3 4D.1 1 2 3
参考答案:B
参考解析:在for(i=0;i<12;i++)C[s[i]]++中,数组元素s[i]的值作为数组c的下标,当退出循环时,数组c的4个元素的值分别为4…3 3 2。因此B选项正确。
3数据库系统的三级模式不包括( )。
A.概念模式B.内模式C.外模式D.数据模式
参考答案:D
参考解析:
数据库系统的三级模式是概念模式、外模式和内模式,所以选择D。
4有以下程序:
程序运行后的输出结果是( )。
A.16B.1C.32D.0
参考答案:B
参考解析:无符号整型变量a的值为8,二进制表示为00001000,右移3位后为00000001,即十进制的l,所以输出1。
5计算机能直接执行的程序是( )。
A.源程序B.目标程序C.汇编程序D.可执行程序
参考答案:D
参考解析:计算机能直接执行的程序是二进制的可执行程序,扩展名为.exe。所以选择D选项。
6以下叙述中错误的是( )。
A.c语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令
B.c程序经过编译、连接步骤之后才能形成一个真正可执行的二进制机器指令文件
C.用c语言编写的程序称为源程序,它以ASCIl代码形式存放在一个文本文件中
D.c语言源程序经编译后生成后缀为.obj的目标程序
参考答案:A
参考解析:C语言中的非执行语句不会被编译,不会生成二进制的机器指令,所以A错误。由C语言构成的指令序列称c源程序,C源程序经过C语言编译程序编译之后生成一个后缀为.OBJ的二进制文件(称为目标文件);最后要由“连接程序”把此.OBJ文件与C语言提供的各种库函数连接起来生成一个后缀为.EXE的可执行文件。
7有以下程序:
程序运行后的输出结果是( )。
A.3B.2C.1D.0
参考答案:D
参考解析:在if else语句中else总是与离它最近的f配对。本题目中x为l所以!X为0,所以执行else if语句中的内容,判断(x==O)是否成立,因为x为1所以条件不成立,听以else if内部的if…else语句不再执行,所以Y的值还是初蛤值0。
8设fp为指向某二进制文件的指针,且已读到此文件末尾,则函数feof(fp),的返回值为( )。
A.0B.\0C.非0值D.NULL
参考答案:C
参考解析:本题考查文件的定位,feof函数的用法是从输入流读取数据,如果到达文件末尾(遇文件结束符),eof函数值为非零值,否则为0,所以选项C正确。
9有以下程序:
程序运行后的输出结果是( )。
A.2,4B.1,2C.1,4D.2.3
参考答案:B
参考解析:结构体变量可以作为函数的参数和返回值。作为函数的实参时,可以实现函数的传值调用。当使用结构体变量作为函数的形参时,实参也应该是结构体变量名以实现传值调用,实参将拷贝副本给形参,在被调用函数中改变形参值对于调用函数中的实参没有影响。所以选择B。
10若有定义:int a,h;通过语句:scanf(”%d;%d”,&a,&B.;,能把整数3赋给变量a,5赋给变量b的输入数据是( )。
A.3 5B.3,5C.3;5D.35
参考答案:C
参考解析:输入数据的格式必须与seanf()的格式控制串完全匹配,所以输入时必须在3和5之间输入“;”。
11有以下程序:
程序运行后的输出结果是( )。
A.0B.10C.20D.出错
参考答案:C
参考解析:nlaIloc(sizeof(int))的作用是开辟一个长度为sizeof(int)存储空间,并通过强制类型转换(int。)将此存储空间的地址赋给了一个整型的指针变量P。然后执行语句·P=n,使得·p的值为10,并通过return返回此值,即a的值为l0。然后在主函数中输出a+ftm(10)=10+10=20。
12设有定义:char s[81];int i=0;,以下不能将一行(不超过80个字符)带有空格的字符串正确读入的语句或语句组是( )
参考答案:C
参考解析:字符串的输入不能使用scanf(”%s”,s);而应该使用9ets(s)。
13下列叙述中正确的是( )。
A.算法就是程序
B.设计算法时只需要考虑数据结构的设计
C.设计算法时只需要考虑结果的可靠性
D.以上三种说法都不对
参考答案:D
参考解析:算法是指解题方案的准确而完整的描述,算法不等于程序,也不等于计算方法,所以A错误。设计算法时不仅要考虑对数据对象的运算和操作,还要考虑算法的控制结构。
14设有以下语句:typedef struct TY{char C;int a{4 1;}CIN;
则下面叙述中正确的是( )。
A.CIN是struct Tr类型的变量
B.TT是struct类型的变量
C.可以用,lr定义结构体变量
D.可以用CIN定义结构体变量
参考答案:D
参考解析:本题考查typcdef重新声明一种结构体类型,其中CIN为结构体类型名,而不是结构体变量,所以D选项正确。
15有以下程序:
I程序运行后的输出结果是( )。
A.0B.3C.7D.8
参考答案:B
参考解析:本题中遇到“\”字符循环结束,所以只统计“\”之前的数字字符,所以为3。
16已定义以下函数:
fun函数的返回值是( )。
A.一个整数B.不确定的值C.形参P中存放的值D.形参P的地址值
参考答案:A
参考解析:返回值为指针变量指向的数据,该数据已被定义为整型。因此A选项正确。
17有以下程序:
程序运行后的输出结果是( )。
A.4321098765B.5678901234C.0987654321D.0987651234
参考答案:B
参考解析:该程序首先给一维数组赋值,然后三次调用fun函数,其中fun(a,0,3);功能是将一维数组中第1个元素和第4个元素互换,第2个元素和第3个元素互换;其中fun(a,4,9);功能是将一维数组中第5个元素和第10个元素互换,第6个和第9个元素互换,第7个元素和第8个元素互换;其中fun(a.O,9);功能是将将一维数组中第l个元素和第10个元素互换,第2个元素和第9个元素互换……依此类推。因此B选项正确。
18有以下程序:
程序运行后的输出结果是( )。、
A.A B E FB.C D E FC.A B C DD.C D A B
参考答案:B
参考解析:本题考察的是变量的作甩范围。如果在同一个源文件中,外部变量与局部变量同名,则在局部变量的作用范围内,外部变量被“屏蔽”,即不起作用:奉题中,在funl()和main()函数内访问的是全局变量a和b,在fun2()函数中访问的是形参变量a和b。所以,main()函数中的prinff()函数输出的是在funl()函数中被改变的全局变量a和b的值C、D,而fun2()函数中输出的是传递给它的实参值E、F。因此B选项正确。
19下面叙述中错误的是( )。
A.软件测试的目的是发现错误并改正错误
B.对被调试的程序进行“错误定位”是程序调试的必要步骤
C.程序调试通常也称为Debug
D.软件测试应严格执行测试计划,排除测试的随意性
参考答案:A
参考解析:软件测试的目的是为了发现错误而执行程序的过程,并不涉及改正错误,所以选项A错误。程序调试的基本步骤有:错误定位、修改设计和代码,以排除错误、进行回归测试,防止引进新的错误。程序调试通常称为DebIlg,即排错。软件测试的基本准则有:所有测试都应追测习需求、严格执行测试计划,排除测试的随意性、充分注意测试中的群集现象、程序员应避免检查自己的程序、穷举测试不可能、妥善保存测试计划等文件。
20有以下程序:
程序运行后的输出结果是( )。
A.10,64B.10,10C.64,10D.64,64
参考答案:A
参考解析:本题考查宏定义的用法,宏定义只是做个简单的替换,所以本题中执行f(a+1)=a+1}a+1}a+1=3}a+1=10,f((a+1))=(a+1)$(a+1)}(a+1)=64,所以答案为A选项。
相关推荐:
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |