2017年计算机等级考试二级C语言考试试题
C语言强大的移植性(Portability)在此显现。机器语言和汇编语言都不具有移植性,为x86开发的程序,不可能在Alpha,SPARC和ARM等机器上运行。下面是小编整理的关于计算机等级考试二级C语言考试试题,欢迎大家参考!
(一)单选题(每题1分,共20分)
1. 第二代电子计算机所采用的逻辑元件是()。
A.小规模集成电路
B.大规模、超大规模集成电路
C.晶体管
D.电子管
2. 运算器和控制器总称为()。
A.主机
B.CPU
C.外部设备
D.硬件系统
3. 计算机能直接识别和处理的语言是()。
A.汇编语言
B.自然语言
C.机器语言
D.高级语言
4. I/O接口位于()。
A.总线和I/0设备之间
B.总线和主机之间
C.CPU和主存储器之间
D.CPU和外存储器之间
5. 显示器的()越高,显示的图象越清晰。
A.对比度
B.亮度
C.对比度和亮度
D.分辨率
6. 计算机的存储容量常用KB为单位,其中1KB表示的是()。
A.1024个字节
B.1024个二进制位
C.1000个字节
D.1000个二进制位
7. 把 Windows 的窗口和对话框作比较窗口可以移动和改变大小,而对话框()。
A.既不能移动,也不能改变大小
B.仅可以移动,不能改变大小
C.不能移动,仅可以改变大小
D.既能移动,也能改变大小
8. Windows 中的“剪切板”是()。
A.硬盘中的一块区域
B.软盘中的一块区域
C.高速缓存中的一块区域
D.内存中的一块区域
9. 资源管理器窗口分左、右窗格,右窗格是用来()。
A.显示活动文件夹中包含的文件夹或文件
B.显示被删除文件夹中包含的文件夹或文件
C.显示被复制文件夹中包含的文件夹或文件
D.显示新建文件夹中包含的文件夹或文件
10. 在Windows 中,呈浅灰色显示的菜单意味着()。
A. 该菜单当前不能选用
B. 选中该菜单后将弹出对话框
C. 该菜单正在使用
D. 选中该菜单后将弹出下级子菜单
11.在中文Windows文件或文件夹窗口中,若要选定一组非连续文件或文件夹,在单击选定的第一个文件或文件夹名(或图标)后,按下()键不放,单击欲选定的文件或文件夹名(或图标),则这些非连续文件或文件夹被选中。
A.Alt
B.Esc
C.Shift
D.Ctrl
二、填空题(每空2 分,共30 分)请将每一个空的正确答案写在答题卡[1]~[15]序号的横线上,答在试卷上不得分。
(1)下列软件系统结构图的宽度为 [1] 。
(2) [2] 的任务是诊断和改正程序中的错误。
(3)一个关系表的行为 [3] 。
(4)按“行进后出”原则组织数据的数据结构是 [4] 。
(5)数据结构分为线性结构和非线性结构,带链的队列属于 [5] 。
(6)若有定义语句:int*a,b;,则变量b 的数据类型是 [6] 。
(7)已知数组a 中的元素个数为n,下列语句的作用是将下标为i 的元素移动到下标为i-1 的单元,其中1≤i
For(int i=0;i(8)已知递归函数f 的定义如下:
int f (int n)
{
If(n<=1)return 1;//递归结束情况
else return n*f(n-2);//递归}则函数调用语句f(5)的返回值是 [8] 。
(9)创建对象数组时,对数组的每一个元素都将调用一次构造函数,如果没有显式给出数组元素的初值,则调用缺省构造函数,下列程序涉及到对象数组的创建和单个对象的创建,其输出结果是 [9] 。
#include
using namespace std;
class Foo{
public:
Foo(int X){cout <<’A”}
Foo(){}
};
int main()
Foo f[3],g(3);
return 0;
}
(10)习惯性在下列程序的输出结果是42,请将画线处缺失的部分补充完整。
#include
Using namespace atd;
Class Foo{
int value;
public:
Foo():value(0){}
Void setvalue(int value)
{ [10] =value; //给Foo 的数据成员value 赋值}void print(){cout<};
Int main()
{
Foo f;
f.setvalue(42);
f.print();
retum0;
}
(11)如果不能使用多态机制,那么通过基类的指针虽然可以指向派生类对象,但是只能访问从基数继承的成员,下列程序没有使用多态机制,其输出结果是 [11] 。
#include
using namespace std;
class Base{
public:
Void print(){cout<< ‘B’;}};
class Derived: public Base{
public
void print(){cout<< ‘D’;}}
int main()
{
Derived*pd=new Dreived);
Base*pb=pd;
pb->print();
pd->print();
delete pd;
return 0;
}
(12)在声明派生类时,如果不显式地给出继承方式,缺省的类继承方式是私有继承
private。已知有如下类定义:
class Base{
protected:
void fun(){}
};
Class Derived: Base{};
则Base 类中的成员函数fun(),在Derived 类中的访问权限是 [12] (注意:要求填写private、protected 或public 中的一项)。
(13)在MyClass 类的定义中,对赋值运算符=进行重载。请将画线处缺失的部分补充完整。
[13] MyClass::operator=(const MyClass rhs)
{
if(this=&rhs)return*this;
value=rhs. value;
return*this;
}
(14)插入排序算法的主要思想是:每次从未排序序列中取出一个数据,插入到已排序序列中的正确位置,InsertSort 类的成员函数sort()实现了插入排序算法,请将画线处缺失的部分补充完整。
class InsertSort{
public:
InsertSort(int*a0,int n0):a(a0),n(n0){}//参数组首地址,n 是数组元素个数
void sort()
{//此函数假设已排离序列初始化状态只包含a[0],未排序序列初始为a[1]?a[n-1]
for (int i=1;iint j;
for( [14] j>0;--j){
if(t>a[j-1])break;
a[j]=a[j-1];}
a[j]=t;}}
protected:
int*a,n;//指针a 用于存放数组首地址,n 用于存放数组元素个数
};
(15)下列程序的输出结果是 [15]
#include
using namespace std;
class A{
int a
public:
A():a(9){}
virtual void print() const {cout<};
class B:public A{
char b;
public:
B(){b= ‘S’;}
void print()const{cout<};
void show(Aa&X){X,print()}
int main()
{ Ad1;*p;
Bd2;
p=&d2;
d1,print();
d2,print();
p->print();
show(d1);
show(d2);
return 0;}
【计算机等级考试二级C语言考试试题】相关文章:
计算机等级考试二级C语言考点03-08
计算机二级C语言考试试题及答案03-08
计算机二级C语言考试上机冲刺试题及答案03-03
2017计算机二级c语言考试试题大全03-09
2017最新计算机二级C语言考试试题02-28
2016计算机等级考试二级C++上机模拟试题及答案03-08
计算机等级二级C语言上机模拟试题及答案10-25