计算机类 二级 C++
全国计算机等级考试 二级C++ 笔试模拟试题(八) 48 题 含答案 C++
1 单选题 1 / 48
根据数据结构中各数据元素之间前后件关系的复杂程度,一般将数据结构分成
A 动态结构和静态结构 B 紧凑结构和非紧凑结构 C 线性结构和非线性结构 D 内部结构和外部结构
查看答案 C. 线性结构和非线性结构
2 单选题 2 / 48
设一棵二叉树中有3个叶子结点,有8个度为1的结点,则该二叉树中总的结点数为
A 12 B 13 C 14 D 15
查看答案 B. 13
3 单选题 3 / 48
在下列几种排序方法中,要求内存量最大的是
A 插入排序 B 选择排序 C 快速排序 D 归并排序
查看答案 D. 归并排序
4 单选题 4 / 48
下列叙述中,不属于结构化程序设计方法的主要原则的是
A 自顶向下 B 由底向上 C 模块化 D 限制使用goto语句
查看答案 B. 由底向上
5 单选题 5 / 48
下列不属于软件调试技术的是
A 强行排错法 B 集成测试法 C 回溯法 D 原因排除法
查看答案 B. 集成测试法
6 单选题 6 / 48
为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为
A PAD图 B N-S图 C 结构图 D 数据流图
查看答案 B. N-S图
7 单选题 7 / 48
软件复杂性度量的参数包括
A 效率 B 规模 C 完整性 D 容错性
查看答案 B. 规模
8 单选题 8 / 48
下列叙述中,不属于数据库系统的是
A 数据库 B 数据库管理系统 C 数据库管理员 D 数据库应用系统
查看答案 B. 数据库管理系统
9 单选题 9 / 48
数据库系统的核心是
A 数据库 B 数据库管理系统 C 数据模型 D 软件工具
查看答案 B. 数据库管理系统
10 单选题 10 / 48
视图设计一般有3种设计次序,下列不属于视图设计的是
A 自顶向下 B 由外向内 C 由内向外 D 自底向上
查看答案 B. 由外向内
11 单选题 11 / 48
下列关于C++关键字的说法中正确的是
A 关键字是用户为程序中各种需要命名的"元素"所起的名字 B 关键字是对程序中的数据进行操作的一类单词 C 关键字是在程序中起分割内容和界定范围作用的一类单词 D 关键字是C++中预先定义并实现一定功能的一类单词
查看答案 D. 关键字是C++中预先定义并实现一定功能的一类单词
12 单选题 12 / 48
下列关于C++函数的描述中正确的是
A 主函数是程序的入口,它由用户定义的函数调用 B 函数在调用之前必须先被声明 C 每个用户定义的函数只能被其他函数调用一次 D 函数是C++中面向对象程序设计框架的基本组成单元
查看答案 B. 函数在调用之前必须先被声明
13 单选题 13 / 48
C++语言中运算对象必须是整型的运算符是
A %= B / C = D <=
查看答案 A. %=
14 单选题 14 / 48
在C++语言中,退格符是
A \n B \t C \f D \b
查看答案 D. \b
15 单选题 15 / 48
有如下程序段 #include<iostream.h> void main() { int a=14,b=15,x; char c=′A′; x=(a&&b)&&(c<′B′); cout << x;} 执行该程序段后,x的值为
A ture B false C 0 D 1
查看答案 D. 1
16 单选题 16 / 48
#include<iostream.h> void main() { int n=9; while(n>6){ n--; cout << n;}} 该程序的输出结果是
A 987 B 876 C 8765 D 9876
查看答案 B. 876
17 单选题 17 / 48
如下程序的执行结果是 #include<iostream.h> void main() { static int a[]={ 1,7,3,9,5,11}; int *p=a; *(p+3)+=4; cout << *p <<"," << *(p+3);}
A 1,13 B 1,16 C 3,13 D 1,14
查看答案 A. 1,13
18 单选题 18 / 48
下面说明不正确的是
A char a[10]="china"; B char a[10],*p=a;p="china"; C char *a;a="china"; D char a[10],*p;p=a="china";
查看答案 D. char a[10],*p;p=a="china";
19 单选题 19 / 48
下列程序的输出结果是 #include<iostream.h> void main() { double d=3.2; int x,y; x=1.2; y=(x+3.8)/5.0; cout << y*d << endl;}
A 3 B 3.2 C 0 D 3.07
查看答案 C. 0
20 单选题 20 / 48
有以下程序 #include<iostream.h> int f(int n) { if(n==1)return 1; else return f(n-1)+1;} void main() { int i,j=0; for(i=1;i<3;i++)j+=f(i); cout << j;} 程序运行后的输出结果是
A 4 B 3 C 2 D 1
查看答案 B. 3
21 单选题 21 / 48
C++语言中类的定义的结束声明的符号是
A } B , C ; D {
查看答案 C. ;
22 单选题 22 / 48
关于类定义中的语句错误的是 class A { int i; A a; A *b; char *ch;};
A int i; B A a; C A *b; D char *ch;
查看答案 B. A a;
23 单选题 23 / 48
下列描述中错误的是
A 析构函数可以被继承 B 虚函数不能被继承 C 派生类可以有多个基类 D 纯虚基类的子类可以是虚基类
查看答案 B. 虚函数不能被继承
24 单选题 24 / 48
下列描述中哪个是正确的?
A 派生类构造函数中没有调用父类构造函数则没有对父类初始化 B 子类构造函数不能是内联函数 C 派生类构造函数中可以对父类数据成员赋值 D 构造函数的返回值为void类型
查看答案 C. 派生类构造函数中可以对父类数据成员赋值
25 单选题 25 / 48
下面关于成员函数重载运算符和友元函数重载运算符相同的是
A 成员函数和友元函数可重载的运算符是不相同的 B 成员函数和友元函数重载运算符时都需要用到this指针 C 成员函数和友元函数重载运算符时都需要声明为公有的 D 成员函数和友元函数重载运算符时的参数可能是相同的
查看答案 A. 成员函数和友元函数可重载的运算符是不相同的
26 单选题 26 / 48
下列运算符只能用友元函数重载的是
A << , >> B new,delete C ++, -- D ,
查看答案 A. << , >>
27 单选题 27 / 48
执行下面的程序段后,变量k中的值为 #include<iostream.h> void main() { int k=3, s[2]; s[0]=k; k=s[1]*10; cout << k;}
A 不定值 B 33 C 30 D 10
查看答案 A. 不定值
28 单选题 28 / 48
关于语句 #include<iostream> using namespace std; void main() { cout << 100.8989663 << ′ ′; cout << fixed << 100.8989663 << ′ ′; cout << scientific << 100.8989663 << ′ ′;} 的输出结果为
A 100.899 100.898966 1.008990e+002 B 100.8989663 100.898966 1.008990e+002 C 100.899 100.898966 1.008989e+002 D 100.899 100.8989663 1.008989e+002
查看答案 A. 100.899 100.898966 1.008990e+002
29 单选题 29 / 48
以下程序的结果是 #include<iostream.h> void main() { char *p="abcdefgh",*r; long *q; q=(long*)p; q++; r=(char*)q; cout << r <<endl;}
A defg B cdef C ghab D efgh
查看答案 D. efgh
30 单选题 30 / 48
以下程序的输出结果是 #include<iostream.h> void main() { char c=′z′; cout << c-25;}
A 97 B Z C z-25 D z
查看答案 A. 97
31 单选题 31 / 48
有以下程序 #include<iostream.h> struct STU { char num[10]; float score[3]; }; void main() { struct STU s[3]={ {"20021",90,95,85}, {"20022",95,80,75}, {"20023",100,95,90}},*p=s; int i; float sum=0; for(i=0;i<3;i++) sum=sum+p->score[i]; cout << sum;} 程序运行后的输出结果是
A 260 B 270 C 280 D 285
查看答案 B. 270
32 单选题 32 / 48
下面程序段中,for循环的执行次数是 char *s="\ta\018bc"; for(;*s!=′\0′;s++)cout << "*";
A 9 B 5 C 6 D 7
查看答案 C. 6
33 单选题 33 / 48
以下程序段的执行结果为 #include<iostream.h> #define PLUS(X,Y)X+Y void main() { int x=1,y=2,z=3,sum; sum=PLUS(x+y,z)*PLUS(y,z); cout << "SUM=" << sum; cout<<endl;}
A SUM=9 B SUM=12 C SUM=18 D SUM=30
查看答案 B. SUM=12
34 单选题 34 / 48
下列程序的运行结果是 #include<iostream.h> void fun(int *a,int *b) { int *k; k=a;a=b;b=k;} void main() { int a=2004,b=9,*x=&a,*y=&b; fun(x,y); cout << a <<" " << b<<endl;}
A 20049 B 92004 C 00 D 编译时出错
查看答案 A. 20049
35 单选题 35 / 48
以下程序的输出结果是 #include<iostream.h> int f() { static int i=0; int s=1; s+=i; i++; return s;} void main() { int i,a=0; for(i=0;i<5;i++)a+=f(); cout << a;}
A 20 B 24 C 25 D 15
查看答案 D. 15
36 填空题 36 / 48
算法的工作量大小和实现算法所需的存储单元多少分别称为算法的__ 。
查看答案 时间复杂度和空间复杂度
37 填空题 37 / 48
数据结构包括数据的逻辑结构、数据的__ 以及对数据的操作运算。
查看答案 存储结构
38 填空题 38 / 48
可以把具有相同属性的一些不同对象归类,称为__ 。
查看答案 对象类
39 填空题 39 / 48
软件工程包括3个要素,分别为方法、工具和__ 。
查看答案 过程
40 填空题 40 / 48
由关系数据库系统支持的完整性约束是指__ 和参照完整性。
查看答案 实体完整性
41 填空题 41 / 48
C++语言标识符是以字母或__ 开头的,由字母,数字和下划线组成的字符串。
查看答案 下划线
42 填空题 42 / 48
在内存中,存储字符′X′要占用1个字节,存储字符串″X″要占用__ 个字节。
查看答案 2
43 填空题 43 / 48
mystrlen函数的功能是计算str所指字符串的长度,并作为函数值返回,请填空。 int mystrlen(char *str) { int i; for(i=0; __ != ′\0′;i++); return(i);}
查看答案 *(str+i)`str[i]
44 填空题 44 / 48
以下函数用来求出数组的最大元素在数组中的下标并存放在k所指的存储单元中。请填空。 #include <iostream.h> void fun(int *s, int t, int *k) { int i; *k=__ ;__ if(s[*k]<s[i])*k=i;} void main() { int a[10]={ 876,675,896,101,301,401,980,431,451,777},k; fun(a, 10, &k); cout << k <<"," << a[k];}
查看答案 45 填空题 45 / 48
如果一个类中定义了成员对象,则该类的对象和成员对象先被初始化的是 __ 。
查看答案 类的成员对象
46 填空题 46 / 48
请在mian函数中填空使下面程序的输出结果为 1 1。 #include<iostream.h> class A { private: int a; int b; public: A():a(0),b (1){} void show(){cout << a << " " << b;}}; class B { private: int a; int c; public: B():a (1),c (1){} void show(){cout << a << " " << c;}}; class C : public A,public B { }; void main() { C cc;__ }
查看答案 cc.B::show();
47 填空题 47 / 48
C++在重载运算符中,如用成员函数重载一元运算符参数表中需要__ 个参数,如用友元函数重载一元运算符参数表中需要__ 个参数。
查看答案 48 填空题 48 / 48
已知:double A (double A){return ++a;}和int A(int A){return ++a;}是一个函数模板的两个实例,请补充该模板的定义: template<typename T1 >__ 。
查看答案 T1 A(T1 a){return ++a;}