国家二级C++机试(选择题)模拟试卷384
选择题
1.下列叙述中正确的是( )。(B)
A. 算法的效率只与问题的规模有关,而与数据的存储结构无关
B. 算法的时间复杂度是指执行算法所需要的计算工作量
C. 数据的逻辑结构与存储结构是一一对应的
D. 算法的时间复杂度与空间复杂度一定相关
解析:算法的时间复杂度是指执行算法所需要的计算工作量。算法的工作量用算法所执行的基本运算的次数来度量,而算法所执行的基本运算次数是问题规模的函数;算法的空间复杂度一般是指执行这个算法所需要的内存空间。算法的时间复杂度与空间复杂度并不相关。数据的逻辑结构就是数据元素之间的逻辑关系,它是从逻辑上描述数据元素之间的关系,是独立于计算机的:数据的存储结构是研究数据元素和数据元素之间的关系如何在计算机中表示,它们并非一一对应。算法的执行效率不仅与问题的规模有关,还与数据的存储结构有关。
2.当需要将一个函数bool isnumber(char c)声明为内联函数时,则此内联函数的函数原型为( )。(C)
A. enum bool isnumber(char c);
B. define bool isnumber(char c);
C. inline bool isnumber(char c);
D. extem bool isnumber(char c);
解析:此题考查的是内联函数的相关知识点。函数原型应指出函数名、返回值类型以及在调用函数时必须提供的参数的个数和类型,因为要声明为内联函数,故应加inline关键字。
3.软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下面属于系统软件的是( )。(B)
A. 编辑软件
B. 操作系统
C. 教务管理系统
D. 浏览器
解析:软件根据应用目标的不同,是多种多样的。软件按功能可以分为:应用软件、系统软件、支撑软件(或工具软件)。应用软件是为解决特定领域的应用而开发的软件。系统软件是计算机管理自身资源,提高计算机使用效率并为计算机用户提供各种服务的软件。支撑软件是介于系统软件和应用软件之间,协助用户开发软件的工具性软件,包括辅助和支持开发和维护应用软件的工具软件,还包括辅助管理人员控制开发进程和项目管理的工具软件。
4.下列有关函数重载的叙述中,错误的是( )。(C)
A. 函数重载就是用相同的函数名定义多个函数
B. 重载函数的参数列表必须不同
C. 重载函数的返回值类型必须不同
D. 重载函数的参数可以带有默认值
解析:所谓函数重载是指同一个函数名可以对应着多个函数的实现。每种实现对应着一个函数体,这些函数的名字相同,但是函数参数的类型不同,还允许参数的个数不同,但不能只有函数的返回值类型不同而参数的个数和类型相同的重载。所以本题答案为C。
5.下列数据结构中,属于非线性结构的是( )。(C)
A. 循环队列
B. 带链队列
C. 二叉树
D. 带链栈
解析:树是简单的非线性结构,所以二叉树作为树的一种也是一种非线性结构。
6.有如下程序:
#include
using namespace std;
class MyClass{
public:
MyClass(int i=0){cout<<1;}
MyClass(const MyClass&x){cout<<2;}
MyClass&operator=(const MyClass&x){cout<<3;return*this;}
~MyClass0{cout<<4;}
};
int main(){
MyClass objl(1),obj2(2),obj3(obj1);
return 0:
}
运行时的输出结果是( )。(A)
A. 112444
B. 11114444
C. 121444
D. 11314444
解析:当创建MyClass类对象obj1(1)和obj2(2)时候,调用类构造函数会输出两个1,然后创建类对象obj3(obj(1))时,会调用拷贝类构造函数,输出一个2,然后当main函数结束时候,调用三个对象的析构函数会输出三个4。
7.一个工作人员可使用多台计算机,而一台计算机被多个人使用,则实体工作人员与实体计算机之间的联系是( )。(C)
A. 一对一
B. 一对多
C. 多对多
D. 多对一
解析:如果一个工作人员只能使用一台计算机且一台计算机只能被一个工作人员使用,则关系为一对一;如果一个工作人员可以使用多台计算机,但是一台计算机只能被一个工作人员使尉,则关系为一对多;如果一个工作人员可以使用多台计算机,一台计算机也可以被多个工作人员使用,则关系为多对多。
8.用树形结构表示实体之间联系的模型是( )。(C)
A. 关系模型
B. 网状模型
C. 层次模型
D. 以上三个都是
解析:层次模型的基本结构是树形结构,这种结构方式在现实世界中很普遍,它们自顶向下、层次分明。
9.数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是( )。(A)
A. 控制流
B. 加工
C. 存储文件
D. 源和潭
解析:数据流图用于抽象描述一个软件的逻辑模型,它由一些特定的图符构成,包括4个方面,即加工、数据流、存储文件、源和潭。
10.设有表示学生选课的三张表,学生S(学号,姓名,性别,年龄,身份证号),课程C(课号,课名),选课SC(学号,课号,成绩),则表SC的关键字(键或码)为( )。(C)
A. 课号,成绩
B. 学号,成绩
C. 学号,课号
D. 学号,姓名,成绩
解析:关键字是指属性或属性的组合,其值能够唯一地标识一个元组,而在SC中学号和课号的组合可以对元组进行唯一的标识。
11.有如下程序:
#include
#include
using namespace std;
class MyString{
public:
char str[80];
MyString(const char*s){strcpy(str,s);}
MyString& operator+=(MyString a){
strcat(str,a.str);
return*this;
}
};
ostream&operator<<(ostream&s,const MyString&z){return s<<z.str;}
int main(){
MyS
本文档预览:3600字符,共13080字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载