2009年9月计算机二级考试C++考题

合集下载

2009年全国计算机等级考试二级C++笔试试题

2009年全国计算机等级考试二级C++笔试试题

2009年9月全国计算机等级考试二级笔试试卷C语言程序设计(考试时间90分钟,满分100分)一、选择题((1)-(10 )、(21)-(40)每题 2 分,(11)-(20)每题 1 分,共70分)(1 )下列数据结构中,属于非线性结构的是A)循环队列B)带链队列C)二叉树D)带链栈(2)下列数据结果中,能够按照先进后出”原则存取数据的是A)循环队列B )栈C)队列D)二叉树(3)对于循环队列,下列叙述中正确的是A)队头指针是固定不变的B)队头指针一定大于队尾指针C)队头指针一定小于队尾指针D)队头指针可以大于队尾指针,也可以小于队尾指针(4 )算法的空间复杂度是指A)算法在执行过程中所需要的计算机存储空间B)算法所处理的数据量C)算法程序中的语句或指令条数D)算法在执行过程中所需要的临时工作单元数(5)软件设计中划分模块的一个准则是A)低内聚低耦合B)高内聚低耦合C)低内聚高耦合D)高内聚高耦合(6 )下列选项中不属于结构化程序设计原则的是A)可封装D)自顶向下C)模块化D )逐步求精(27)有如下程序:#i ncludeusing n amespace std;class Toy{public:Toy(char* _n) { strcpy (n ame,_ n); coun t++;}~Toy(){ coun t--; }char* GetName(){ return n ame; }static int getCo un t(){ retur n coun t; }private:char n ame[10];static int count;};int Toy::co un t=0;int mail(){Toy t1( "Snoopy” ),t2( “ Mickey ” ),t3( “ Barbie ” ); cout<<t1.getco un t()<<e ndl;return 0;}运行时的输出结果是A) 1B) 2C) 3D)运行时出错</t1.getcount()<<endl;(28)有如下程序#i ncludeusing n amespace std;class A {public:A(i nt i):rl(i) {}void print() {cout<<?e?<<r1<<? -,;}void print() const {cout<<?C?<<rl*rl<<? -,;}private:int rl;};int mai n(){A al(2); con st A a2(4);Al.pri nt();a2.pri nt();Retur n 0;}运行时的输出结果是A)运行时出错B)E2-C16-C)C4-C16-D)E2-E4- </rl*rl<<?-,;}</r1<<?-,;}(11 )已知函数FA调用FB,若要把这两个函数定义在同一个文件中,则A)FA必须定义在FB之前B)FB必须定义在FA之前C)若FA定义在FB之后,则FA的原型必须出现在FB的定义之前D)若FB定义在FA之后,则FB的原型必须出现在FA的定义之前(12)有如下两个类定义class AA{};class BB{AA v1,*v2;BB v3;Int *v4;};其中有一个成员变量的定义是错误的,这个变量是A)v1B)v2C)v3D)v4(13 )有如下类定义:class XX{int xdata;public:XX(i nt n=0) : xdata (n) { }};class YY : public XX{int ydata;public:YY(i nt m=0, i nt n=0) : XX(m), ydata( n) { }};YY类的对象包含的数据成员的个数是A) 1B) 2D) 4(14 )下列有关运算符函数的描述中,错误的是A)运算符函数的名称总是以operator为前缀B)运算符函数的参数可以是对象C)运算符函数只能定义为类的成员函数D)在表达式中使用重载的运算符相当于调用运算符重载函数(15)下列关于模板形参的描述中,错误的是A)模板形参表必须在关键字template之后B)模板形参表必须用括弧()括起来C)可以用class修饰模板形参D)可以用type name修饰模板形参(16)在下列枚举符号中,用来表示相对于当前位置”文件定位方式的是A)ios_base::curB)ios_base::begC)ios_base::outD)ios_base::end(17)下列字符串可以用作C++标识符的是A)2009varB)gotoC)test - 2009D)_123(18)下列枚举类型的定义中,包含枚举值3的是A)enum test {RED, YELLOW, BLUE, BLACK};B)enum test {RED, YELL0W=4, BLUE, BLACK};C)enum test {RED=-1, YELLOW,BLUE, BLACK};D)enum test {RED, YELLOW=6, BLUE, BLACK};(19 )有如下程序段:in t i=1;while (1) {i++;if(i == 10) break;if(i%2 == 0) cout << ,*?;}执行这个程序段输出字符*的个数是A)10B) 3C) 4D) 5(20 )已知数组arr的定义如下:int arr[5] = {1,2,3,4,5};下列语句中输出结果不是2的是A)cout << *arr+1 <<endl;B)cout << *(arr+1)<<endl;C)cout << arr[1] <<endl;D)cout << *arr <<endl;< p=""x/endl;<></endl;</e ndl;</e ndl;(21)计算斐波那契数列第n项的函数定义如下:Int fib(i nt n){if (n == 0) retur n 1;else if (n == 1) return 2;else return fib( n-1)+fib( n-2);}若执行函数调用表达式fib(2),函数fib被调用的次数是A) 1B) 2C) 3D) 4(22)Sample是一个类,执行下面语句后,调用Sample类的构造函数的次数是Sample a[2], *p = new Sample;A)0B) 1C) 2D) 3(23)下列关于虚基类的描述中,错误的是A )使用虚基类可以消除由多继承产生的二义性B)构造派生类对象时,虚基类的构造函数只被调用一次C)声明“class B : virtual public A 说明类”为虚基类D)建立派生类对象时,首先调用虚基类的构造函数(24 )将运算符重载为类成员函数时,其参数表中没有参数,说明该运算是A)不合法的运算符B)一元运算符C)无操作数的运算符D)二元运算符(25)有如下模板声明: template class A;下列声明中,与上述声明不等价的是A)template class A;B)template class A;C)template class A;D)template class A;(26 )下列关于C++流的描述中,错误的是A)cout»?A?表达式可输出字符 AB)eof()函数可以检测是否到达文件尾C)对磁盘文件进行流操作时,必须包含头文件fstreamD)以ios_base::out模式打开的文件不存在时,将自动建立一个新文件(29)有如下程序:#i ncludeusing n amespace std;class Name{char n ame[20];public:Name(){strcpy(name, ”” ); cout<<???;}Name(char *fname)){strcpy (n ame,fname); cout<???;}};int mai n(){Name names[3]={Name( “ 张三” ),Name(李'四” )};Retur n 0;}运行此程序输出符号?的个数是A)0B) 1C) 2D) 3(30)有如下程序:#i ncludeusing n amespace std;public:AA(){ cout<<?1?; }};class BB: public AA{int k;public:BB():k(0){ cout<<?2?; }BB(int n):k(n){ cout<<?3?;} } int mai n(){BB b(4), c;return 0;}运行时的输出结果是A)1312D) 132C)32D)1412(31)有如下程序:#i ncludeusing n amespace std;class C1{public:~C1(){ cout<<1; }};Class C2: public c1{public:~c2(){ cout<<2; }};int mai n(){C2 cb2;C1 *cb1;return 0;}运行时的输出结果是A)121B)21C)211D) 12(32)有如下程序#i ncludeusing n amespace std;class Publicatio n{ // 出版物类char n ame[30];public:Publicat ion(char *name=朱知名称” ){strcpy(this->n ame ,n ame);}const char * getName()c onst{ retur n n ame; }virtual const char * getType()const{ return 未知类型“ ;} };class Book: public Publicati on{ // 书类public:Book(char *n ame): Publicati on(n ame){}virtual const char * g etType()const{ return 书;}};void showPublicati on( Publicati on &p){cout<< ” <<p.getname()<<endl;}int mai n(){Book book(精彩人生”);showPublicati on( book);return 0;}运行时的输出结果是A)未知类型:未知名称B)未知类型:精彩人生C)书:未知名称D)书:精彩人生</p.getname()<<endl;(33 )下列关于运算符重载的描述中,错误的是A)::运算符不能重载B)类型转换运算符只能作为成员函数重载C)将运算符作为非成员函数重载时必须定义为友元D)重载[]运算符应完成下标访问”操作(34)有如下程序:#in clude#in eludeUsing n amespace std;int mai n(){int s[]={123, 234};cout<<right<<setfill(,*?)<<setw(6);for(int i=0; i<2; i++) { cout<<s[i]<return 0;}运行时的输出结果是A)123234B)***123234C)***123***234D)***123234***</s[i]<</right<<setfill(,*?)<<setw(6);(35)有如下类定义class A {char *a;public:A():a(O){}A(char *aa){ //把aa所指字符串拷贝到a=;a所指向的存储空间strcpy(a,aa);strcpy(a,aa);}~A() {delete []a;}};横线处应填写的表达式是A)nes char[strlen(aa)+1]B)char[strlen(aa)+1]C)char[strlen(aa)]D)new char[sizeof(aa)-1]二、填空题(每题2分,共30分)(1)某二叉树有5个度为2的结点以及3个度为1的结点,则该二叉树中共有结点。

2009(秋)c语言二级基础试卷

2009(秋)c语言二级基础试卷

17. 目前数码相机拍摄的照片在保存时通常采用的文
件类型是 17 C 。
A. BMP 位图文件
B. GIF 具有动画效果 C. JPEG
D. TIF
扫描仪文件
18. MP3是数字波形声音的一种压缩编码文件格式, 它采用的压缩编码标准属于 18 A 。 A. MPEG-1 B. MPEG-2 C. MPEG-4 D. Dolby AC-3 MPEG-1的层3标准
20. 在计算机应用中,CAD和CAM是典型的信息系 统。它们属于 20 。 B
A. 管理业务系统 B. 辅助技术系统
C. 信息检索系统
D. 信息分析系统
B. 21.18.33.48
C. 120.34.0.18 D. 37.251.68.0
14. 为了将异构的计算机网络互相连接起来,必须 使用的网络设备是 14 。 D
A. 调制解调器 B. 以太网集线器
C. 以太网交换机
D. 路由器
15. 下列网络协议中,与发送电子邮件有关的是 15 。 C
A. HTTP
超文本传输协议”,浏览指定服务器上的网页。
B. FTP
文件传输协议,远程文件传输操作。
C. SMTP
SMTP是发送协议,另外还有 POP3(接收协议), MIME(可包含文本和图像), IMAP(提供“摘要 浏览”,不需下载, 直接存取服务器 上的邮件)
D. TELNET
登录远程计算机
16. 在下列有关字符集及其编码的叙述中,错误的是 16 。 D A. 基本的ASCII字符集共有128个字符,每个字 符使用7个二进位进行编码 B. GB2312字符集中收录了6千多个汉字,每个 字符在机内通常使用双字节编码 C. GBK字符集中的字符也采用双字节编码,且 该字符集收录了部分繁体汉字 可以是:1字节(与ASCII兼容,128个字符) D. GB18030字符集中所有的字符均采用4字节编 2字节(与GB2312、GBK兼容,23940个字符) 码,因此该字符集的代码空间很大 4字节(与UCS兼容,158万个字符)

2009计算机二级c语言考试真题及答案

2009计算机二级c语言考试真题及答案

2009计算机二级c语言考试真题及答案一、选择题(每题1分,共40分)1. 在C语言中,以下哪个选项是合法的标识符?A. 2variableB. variable2C. _variableD. variable-2答案:C2. 若有定义:int a=3, b=4, c=5;,则表达式a+b+c的值是:A. 12B. 9C. 15D. 3答案:C3. C语言中,以下哪个选项是正确的整型常量?A. 0x12B. 0x12.0C. 0x12LD. 0x12.0L答案:A4. 在C语言中,以下哪个选项是正确的字符常量?A. 'ab'B. '65'C. '\n'D. "A"答案:C5. 若有定义:int a=5, b=10;,则执行语句a=b后,变量a的值是:A. 5B. 10C. 15D. 0答案:B6. 在C语言中,以下哪个选项是正确的字符串常量?A. "Hello, World!"B. 'Hello, World!'C. "Hello World!"D. 'Hello World!'答案:A7. 若有定义:int a=5;,则执行语句a+=3后,变量a的值是:A. 5B. 8C. 3D. 2答案:B8. 在C语言中,以下哪个选项是正确的数组定义?A. int a[5] = {1, 2, 3, 4, 5};B. int a[5] = {1, 2, 3};C. int a[] = {1, 2, 3, 4, 5};D. int a[5] = {1, 2, 3, 4};答案:C9. 若有定义:int a[5] = {1, 2, 3, 4, 5};,则执行语句a[2]=6后,数组元素a[2]的值是:A. 1B. 2C. 6D. 5答案:C10. 在C语言中,以下哪个选项是正确的函数定义?A. int max(int x, int y) { return x > y ? x : y; }B. int max(int x, int y) { if(x > y) return x; else returny; }C. int max(int x, int y) { return x > y ? y : x; }D. int max(int x, int y) { if(x > y) return y; else returnx; }答案:A二、填空题(每题2分,共20分)1. 在C语言中,若要定义一个整型变量x并初始化为10,应使用语句:________。

2009计算机二级c语言考试真题及答案

2009计算机二级c语言考试真题及答案

2009计算机二级c语言考试真题及答案一、选择题(每题2分,共40分)1. 下列关于C语言中变量的描述,不正确的是:A. 变量名必须以字母开头B. 变量名可以包含数字和下划线C. 变量名区分大小写D. 变量名可以包含空格答案:D2. C语言中,用于定义整型变量的关键字是:A. intB. floatC. doubleD. char答案:A3. 下列哪个选项不是C语言中的运算符:A. %B. /C. *D. $答案:D4. 在C语言中,用于输入输出的函数是:A. printf() 和 scanf()B. cout() 和 cin()C. print() 和 input()D. display() 和 read()答案:A5. 下列哪个选项是C语言中的逻辑运算符:A. &&B. ||C. !D. 以上都是答案:D6. C语言中,用于定义字符型变量的关键字是:A. intB. charC. floatD. double答案:B7. 下列哪个选项是C语言中的循环结构:A. ifB. whileC. switchD. for答案:B、D8. C语言中,用于定义浮点型变量的关键字是:A. intB. floatC. doubleD. char答案:B、C9. 下列哪个选项是C语言中的条件语句:A. ifB. whileC. forD. switch答案:A10. 在C语言中,用于定义字符串的字符数组,正确的声明方式是:A. char str[10] = "Hello";B. int str[10] = "Hello";C. float str[10] = "Hello";D. double str[10] = "Hello";答案:A二、填空题(每题2分,共20分)1. C语言中,用于定义单精度浮点型变量的关键字是 float 。

全国计算机等级考试C语言2级笔试题(第30次)-2009年09月

全国计算机等级考试C语言2级笔试题(第30次)-2009年09月

全国计算机等级考试C语言2级笔试题(第30次)-2009年09月全国计算机等级考试C语言2级笔试题-2009年09月第30次考试题目

选择题软件技术基础单选题(1-10)下列各题A)、B),C)、D)四个选项中,只有一个选项是正确的。1.下列数据结构中,属于非线性结构的是()A)循环队列B)带链队列C)二叉树D)带链栈C[解析]根据数据结构中各数据元素之间前后关系的复杂程度,一般将数据结构分为两大类型:线性结构与非线性结构。线性结构表示数据元素之间为一对一的关系,非线性结构表示数据元素之间为一对多或者多对一的关系。根据各种结构的定义知二叉树是一种非线性结构。

2.下列数据结构中,能够按照“先进后出”原则取数据的是()A)循环队列B)栈C)队列D)二叉树B[解析]栈是限定只在一端进行插入与删除的线性表,通常称插入、删除的这一端为栈顶,另一端为栈底。栈顶元素总是后被插入的元素,也是最先被删除的元素;栈底元素总是最先被插人的元素,也是最后才能被删除的元素。栈是按照“先进后出”或“后进先出”的原则组织数据的。

3.对于循环队列,下列叙述中正确的是()A)队头指针是固定不变的B)队头指针一定大干队尾指针C)队头指针一定小于队尾指针D)队头指针可以大干队尾指针,也可以小于队尾指针D[解析]循环队列是将顺序队列首尾相连形成的,随着插入元素或删除元素的进行,其队头指针及队尾指针是在不断变化的,有时可能会出现队头指针大于队尾指针的情况,也可能是队尾指针大于队头指针,故答案为D)。

4.算法的空间复杂度是指()A)算法在执行过程中所需要的计算机存储空间B)算法所处理的数据量C)算法程序中的语句或指令条数D)算法在执行过程中所需要的临时工作单元数A[解析]算法的空间复杂度是指:算法执行过程中所需的存储空间。一个算法所占用的存储空间包括算法程序所占的空间、输入的初始数据所占的存储空间以及算法执行过程中所需要的额外空间。

5.软件设计中划分模块的一个准则是()A)低内聚低耦合B)高内聚低耦合C)低内聚高耦合D)高内聚高耦合B[解析]模块划分应考虑的因素包括模块之间的耦合和内聚。一般来说,要求模块之间的耦合尽可能地低,即模块尽可能独立,要求模块的内聚程度尽可能地高,即遵循高内聚、低耦合的原则。

C语言考试2009-3

C语言考试2009-3

2009年9月全国计算机等级考试二级笔试试卷C语言程序设计(考试时间120分钟,满分100分)一、选择题((1)~(10)、(21)~(40)每小题2分,(11)~(20)每小题1分,共70分)1.下列叙述中正确的是 ______。

A.栈是“先进先出”的线性表B.队列是“先进后出”的线性表C.循环队列是非线性结构D.有序线性表既可以采用顺序存储结构,也可以采用链式存储结构2.支持子程序调用的数据结构是 ______ 。

A.栈B.树C.队列D.二叉树3.某二叉树有5个度为2的结点,则该二叉树的叶子结点数是 ______ 。

A.10B.8C. 6D. 44.下列排序方法中,最坏情况下比较次数最少的是 ______ 。

A.冒泡排序B.简单选择排序C.直接插入排序D.堆排序5.软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件),下面属于应用软件的是 ______ 。

A.编译程序B.操作系统C.教务管理系统D.汇编程序6.下面叙述中错误的是 ______ 。

A.软件测试的目的是发现错误并改正错误B.对被调试的程序进行“错误定位”是程序调试的必要步骤C.程序调试通常也称为DebugD.软件测试应严格执行测试计划,排除测试的随意性7.耦合性和内聚性是对模块独立性度量的两个标准。

下列叙述中正确的是 ______ 。

A.提高耦合性降低内聚性有利于提高模块的独立性B.降低耦合性提高内聚性有利益提高模块的独立性C.耦合性是指一个模块内部各个元素间彼此结合的紧密程度D.内聚性是指模块间互相连接的紧密程度8.数据库应用系统中的核心问题是 ______ 。

A.数据库设计B.数据库系统设计C.数据库维护D.数据库管理员培训9.设有两个关系R、S如下:R SA B Ca 3 2b 0 1c 2 1 A Ba 3b 0c 2由关系R通过运算得到关系S,则所使用的运算为 ______ 。

A.选择B.投影C.插入D.连接10.将E-R图转换为关系模式时,实体和联系都可以表示为 ______ 。

2009年3月和9月全国计算机等级考试二级C语言笔试真题及参考答案

2009年3月和9月全国计算机等级考试二级C语言笔试真题及参考答案

2009年3月二级C语言笔试真题及答案、、((1)—(10)每小题2分,(11)—(50)每题1分,共60分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。

(1)下列叙述中正确的是先进后出A)栈是“先进先出”的线性表B)队列是“先进先出”的线性表 b lC)循环队列是非线性结构D)有序性表既可以采用顺序存储结构,也可以采用链式存储结构(2)支持子程序调用的数据结构是A)栈 B)树 C)队列 D)二叉树(3)某二叉树有5个度为2的结点,则该二叉树中的叶子结点数是A)10 B)8 C)6 D)4(4)下列排序方法中,最坏情况下比较次数最少的是A)冒泡排序 B)简单选择排序C)直接插入排序 D)堆排序(5)软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。

下面属于应用软件的是A)编译软件 B)操作系统C)教务管理系统 D)汇编程序(6)下面叙述中错误的是A)软件测试的目的是发现错误并改正错误B)对被调试的程序进行“错误定位”是程序调试的必要步骤C)程序调试通常也称为DebugD)软件测试应严格执行测试计划,排除测试的随意性(7)耦合性和内聚性是对模块独立性度量的两个标准。

下列叙述中正确的是A)提高耦合性降低内聚性有利于提高模块的独立性B)降低耦合性提高内聚性有利于提高模块的独立性C)耦合性是指一个模块内部各个元素间彼此结合的紧密程度D)内聚性是指模块间互相连接的紧密程度(8)数据库应用系统中的核心问题是A)数据库设计B)数据库系统设计C)数据库维护D)数据库管理员培训(9)有两个关系R,S如下:RS由关系R通过运算得到关系S,则所使用的运算为A)选择 B)投影 C)插入 D)连接(10)将E-R图转换为关系模式时,实体和联系都可以表示为A)属性 B)键 C)关系 D)域(11)以下选项中合法的标识符是A) 1-1 B)1—1 C)-11 D)1—12)若函数中有定义语句:int k;,则A)系统将自动给k赋初值0B)这时k中值无定义C)系统将自动给k赋初值-1D)这时k中无任何值(13)以下选项中,能用作数据常量的是A)o115 B) 0118 C)1.5e1.5 D) 115L(14)设有定义:int x=2;,以下表达式中,值不为6的是A) x*=x+1 B) x++,2*xC)x*=(1+x) D)2*x,x+=2(15)程序段:int x=12;double y=3.141593; printf(“%d%8.6f”,x,y);的输出结果是A)123.141593 B)123.141593C)12,3.141593 D)123.141593(16)若有定义语句:double x,y,*px,*py,执行了px=&x, py=&y;之后,正确的输入语句是A)scanf(“%f%f”,x,y); B) scanf(“%f%f”,&x,&y);C) scanf(“%lf%le”,px,py); D) scanf(“%lf%lf”,x,y);(17)以下是if语句的基本形式:if(表达式)语句其中“表达式”A)必须是逻辑表达式 B)必须是关系表达式C)必须是逻辑表达式或关系表达式 D)可以是任意合法的表达式(18)有以下程序#include <stdio.h>main(){int x;scanf(“%d”,&x);if(x<=3); elseif(x!=10)printf(“%d\n”,x);}程序运行时,输入的值在哪个范围才会有输出结果A)不等于10的整数 B)大于3且不等于10的整数C)大于3或等于10的整数 D)小于3的整数(19)有以下程序#include<stdio.h>Main(){int a=1,b=2,c=3,d=0;if(a= =1 &&b++= =2)if(b!=2 || c--!=3)printf(“%d,%d,%d\n”,a,b,c);else printf(“%d,%d,%d\n”,a,b,c);else printf(“%d,%d,%d\n”,a,b,c);}程序运行后的输出结果是A)1,2,3 B)1,3,2C)1,3,3 D)3,2,1(20)以下程序中的变量已正确定义for(i=0;i<4;i++,i++for(k=1;k<3;k++);printf(*”);程序段的输出结果是A)******** B)****C)** D)*(21)有以下程序#include<stdio.h>main(){char*s=(“ABC);do{printf(“%d”,*s%10);s++;}while(*s);}注意,字母A的ASCII码值为65。

历年计算机二级C语言笔试真题及答案

历年计算机二级C语言笔试真题及答案

2009 年9 月计算机等级考试二级笔试试卷B)程序设计的任务就是确定所用数据结main1)下列数据结构中,属于非线性结构的构int c0k是C)程序设计的任务就是确定所用算法for k1klt3kA)循环队列B 带链队列 C 二叉树D)以上三种说法都不完整switch kD)带链栈12)以下选项中,能用作用户标识符的是default: ck2)下列数据结果中,能够按照“先进后A)void B)8_8 C)_0_ D)unsigned case 2: cbreak 出”原则存取数据的是13)阅读以下程序case 4: c2breakA 循环队列 B 栈C队列D二叉树include ltstdio.hgt 3)对于循环队列,下列叙述中正确的是main printf“dn”cA)队头指针是固定不变的B)队头指针int case float printF 一定大于队尾指针C)队头指针一定小于printf“请输入2 个数:” 程序运行后的输出结果是队尾指针D)队头指针可以大于队尾指scanf“d f”ampcaseamppjrintF A)3 B)5 C)7 D)9针,也可以小于队尾指针printf“d fn”caseprintF 19 )以下程序段中,与语句:4)算法的空间复杂度是指kagtbbgtc1:0:0;功能相同的是A)算法在执行过程中所需要的计算机存该程序编译时产生错误,其出错原因是A)ifagtbampampbgtc k1else k0储空间B)算法所处理的数据量C)A)定义语句出错,case 是关键字,不能B)ifagtbbgtc k1else k0算法程序中的语句或指令条数用作用户自定义标识符B)定义语句C)ifaltb k0else ifbltc k1D)算法在执行过程中所需要的临时工作出错,printF不能用作用户自定义标D)ifagtb k1else ifbgtc k1 else k0单元数识符20)有以下程序5)软件设计中划分模块的一个准则是C)定义语句无错,scanf 不能作为输入函include ltstdio.hgtA 低内聚低耦合B 高内聚低耦合数使用D)定义语句无错,printf mainC 低内聚高耦合 D 高内聚高耦合不能输出case 的值char s“012xy”int in06)下列选项中不属于结构化程序设计原14)表达式:intdouble9/2-92 的值fori0si0i则的是是ifsigt’a’ampampsilt’z’ nA 可封装 B 自顶向下C 模块化A)0 B)3 C)4 D)5 printf“dn”nD 逐步求精15)若有定义语句:int x10,则表达式程序运行后的输出结果是7)软件详细设计x-xx 的值为A)0 B)2 C)3 D)5产生的图如下:A)-20B)-10C)0D)10 21)有以下程序该图是16)有以下程序include ltstdio.hgtA N-S 图 B include ltstdio.hgt mainPAD 图C 程序main int n2k0流程图D E-R 图inta1b0 whilekampampngt28)数据库管理系统是printf“d”bab printf“d dn”knA)操作系统的一部分B 在操作系统支printf“dn”a2b 程序运行后的输出结果是持下的系统软件C 一种编译系统A)0 2 B)1 3 C)5 7 D)1 2D 一种操作系统程序运行后的输出结果是22)有以下定义语句,编译时会出现编译9)在E-R 图中,用来表示实体联系的图A)00 B)10 C)32 D)12 错误的是形是17)设有定义:int a1b2c3,以下语A)char a’a’ B)char a’n’ C)charA 椭圆图B矩形C 菱形 D 三角形句中执行效果与其它三个不同的是a’aa’ D)char a’x2d’10)有三个关A )ifagtb 23)有以下程序系R,S 和T caabbc include ltstdio.hgt如下:B )ifagtb main其中关系T 由caabb char c1c2关系R 和S 通c C)c1’A’’8’-‘4’过某种操作得ifagtb c2’A’’8’-‘5’到,该操作为caabb printf“cdn”c1c2A 选择B 投影C 交D 并c D)ifagtb caabbc 11)以下叙述中正确的是A)程序设18)有以下程序已知字母 A 的ASCII 码为65,程序运行计的任务就是编写程序代码并上机include ltstdio.hgt 后的输出结果是A)E68 B)D69 C)ED D)printf“d”strlenpprintf“sn”p A)void pf pffun B)viod pf 输出无定值程序运行后的输出结果是pffun C)void pf pffun D)24)有以下程序A)9OneWorld B)9OneDream C)void pfintcharpfampfun include ltstdio.hgt 10OneDream D)10OneWorld (34)有以下程序void funint p 29)有以下程序i nclude ltstdio.hgt int d2 include ltstdio.hgt int fint n pd printf“d”p main main main int a 2354i int a3s int a1 fori0ilt4i sfassfaprintf“dn”s funa printf“dn”a 程序运行switchi2 后的输出结果是case 0:switchai2 int fint n A)32 B)12 C)21 D)22 case 0:aibreak static int a125)以下函数findmax 拟实现在数组中查case 1:ai-- na找最大值并作为函数值返回,但程序中有break return n错导致不能实现预定功能case 1:ai0 程序运行以后的输出结果define MIN -2147483647 是int findmax int xint nfori0ilt4i printf“d”ai A)7 B)8 C)9 D)10 int imax printf“n” 35)有以下程序fori0iltni include ltstdio.hgt maxMIN 3 A)3 4 4 B)0 5 0 2 3 C)0 4 0 D)define fx xxx ifmaxltxi maxxi 0304 main return max 30)有以下程序int a3st 造成错误的原因是include ltstdio.hgt sfa1tfa1A)定义语句int imax中max 未赋初值includeltstring.hgt printf“ddn’stB)赋值语句maxMIN中,不应给max main 程序运行后的输出结果赋MIN 值chara10”abcd” 是C)语句ifmaxltxi maxxi中判断条件printf“ddn”strlenasizeofa A)1064 B)1010 C)6410 D)设置错D)赋值语句maxMIN 程序运行后的输出结果是6464 放错了位置A)74 B)410 C)88 D)1010 36)下面结构体的定义语句中,错误的是(26)有以下程序31)下面是有关 C 语言字符数组的描述,A)struct ord int xint yint z struct ord a include ltstdio.hgt 其中错误的是B)struct ord int xint yint z struct main A)不可以用赋值语句给字符数组名赋字ord a int m1n2pampmqampnr 符串B)可以用输入语句把字符串C )struct ord int xint yint z a rppqqr 整体输入给字符数组D)struct int xint yint z a C)字符数组中的内容不一定是字符串37)设有定义:char c,以下选项中能够printf“ddddn”mnpq D)字符数组只能存放字符串使字符型指针c 正确指向一个字符串程序运行后的输出结果是32)下列函数的功能是的是A)121 B)1221 C)212 D)funchar achar b A )char str ”string”cstrB)2112 whileba’0’ ab scanf“s”c C )cgetchar27)若有定义语句:int a410pq4 A)将 a 所指字符串赋给b 所指空间B)D)c”string”且0≤ilt4,则错误的赋值是使指针b 指向a 所指字符串C)将 a 38)有以下程序A)pa B)qiai C)pai D)所指字符串和 b 所指字符串进行比较include ltstdio.hgt pampa21 D)检查a 和b 所指字符串中是否有’0’ includeltstring.hgt28)有以下程序33)设有以下函数struct A include ltstdio.hgt void funint nchar s …… 则下面对int a char b10 double c includeltstring.hgt 函数指针的定义和赋值均是正确的struct A fstruct A t main 是main char str 20“OneWorld” struct A “OneDream”pstr1 a1001”ZhangDa”1098.0 main 程序运行时从键盘输入:How are afajprintf“ds6.1fn”a.aa.b int x20 yoult 回车gt 则输出结果为【13】。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、选择题((1)-(10)、(21)-(40)每题2分,(11)-(20)每题1分,共70分)

(1)下列数据结构中,属于非线性结构的是 A)循环队列 B)带链队列 C)二叉树 D)带链栈

(2)下列数据结果中,能够按照“先进后出”原则存取数据的是 A)循环队列 B)栈 C)队列 D)二叉树

(3)对于循环队列,下列叙述中正确的是 A)队头指针是固定不变的 B)队头指针一定大于队尾指针 C)队头指针一定小于队尾指针 D)队头指针可以大于队尾指针,也可以小于队尾指针

(4)算法的空间复杂度是指 A)算法在执行过程中所需要的计算机存储空间 B)算法所处理的数据量 C)算法程序中的语句或指令条数 D)算法在执行过程中所需要的临时工作单元数

(5)软件设计中划分模块的一个准则是 A)低内聚低耦合 B)高内聚低耦合 C)低内聚高耦合 D)高内聚高耦合

(6)下列选项中不属于结构化程序设计原则的是 A)可封装 D)自顶向下 C)模块化 D)逐步求精

(27)有如下程序: #include using namespace std; class Toy{ public: Toy(char* _n) { strcpy (name,_n); count++;} ~Toy(){ count--; } char* GetName(){ return name; } static int getCount(){ return count; } private: char name[10]; static int count; }; int Toy::count=0; int mail(){ Toy t1(“Snoopy”),t2(“Mickey”),t3(“Barbie”); cout

(28)有如下程序 #include using namespace std; class A { public: A(int i):rl(i) {} void print() {cout<<’e’

(11)已知函数FA调用FB,若要把这两个函数定义在同一个文件中,则 A)FA必须定义在FB之前 B)FB必须定义在FA之前 C)若FA定义在FB之后,则FA的原型必须出现在FB的定义之前 D)若FB定义在FA之后,则FB的原型必须出现在FA的定义之前

(12)有如下两个类定义 class AA{}; class BB{ AA v1,*v2; BB v3; Int *v4; }; 其中有一个成员变量的定义是错误的,这个变量是 A)v1 B)v2 C)v3 D)v4

(13)有如下类定义: class XX{ int xdata; public: XX(int n=0) : xdata (n) { } }; class YY : public XX{ int ydata; public: YY(int m=0, int n=0) : XX(m), ydata(n) { } }; YY类的对象包含的数据成员的个数是 A)1 B)2 C)3 D)4

(14)下列有关运算符函数的描述中,错误的是 A)运算符函数的名称总是以operator为前缀 B)运算符函数的参数可以是对象 C)运算符函数只能定义为类的成员函数 D)在表达式中使用重载的运算符相当于调用运算符重载函数

(15)下列关于模板形参的描述中,错误的是 A)模板形参表必须在关键字template之后 B)模板形参表必须用括弧( )括起来 C)可以用class修饰模板形参 D)可以用typename修饰模板形参 (16)在下列枚举符号中,用来表示“相对于当前位置”文件定位方式的是 A)ios_base::cur B)ios_base::beg C)ios_base::out D)ios_base::end

(17)下列字符串可以用作C++标识符的是 A)2009var B)goto C)test - 2009 D)_123

(18)下列枚举类型的定义中,包含枚举值3的是 A)enum test {RED, YELLOW, BLUE, BLACK}; B)enum test {RED, YELLOW=4, BLUE, BLACK}; C)enum test {RED=-1, YELLOW,BLUE, BLACK}; D)enum test {RED, YELLOW=6, BLUE, BLACK};

(19)有如下程序段: int i=1; while (1) { i++; if(i == 10) break; if(i%2 == 0) cout << ‘*’; } 执行这个程序段输出字符*的个数是 A)10 B)3 C)4 D)5

(20)已知数组arr的定义如下: int arr[5] = {1,2,3,4,5}; 下列语句中输出结果不是2的是 A)cout << *arr+1

(21)计算斐波那契数列第n项的函数定义如下: Int fib(int n){ if (n == 0) return 1; else if (n == 1) return 2; else return fib(n-1)+fib(n-2); } 若执行函数调用表达式fib(2),函数fib被调用的次数是 A)1 B)2 C)3 D)4

(22)Sample是一个类,执行下面语句后,调用Sample类的构造函数的次数是 Sample a[2], *p = new Sample; A)0 B)1 C)2 D)3

(23)下列关于虚基类的描述中,错误的是 A)使用虚基类可以消除由多继承产生的二义性 B)构造派生类对象时,虚基类的构造函数只被调用一次 C)声明“class B : virtual public A”说明类B为虚基类 D)建立派生类对象时,首先调用虚基类的构造函数

(24)将运算符重载为类成员函数时,其参数表中没有参数,说明该运算是 A)不合法的运算符 B)一元运算符 C)无操作数的运算符 D)二元运算符

(25)有如下模板声明: template class A; 下列声明中,与上述声明不等价的是 A)template class A; B)template class A; C)template class A; D)template class A;

(26)下列关于C++流的描述中,错误的是 A)cout>>’A’表达式可输出字符A B)eof()函数可以检测是否到达文件尾 C)对磁盘文件进行流操作时,必须包含头文件fstream D)以ios_base::out模式打开的文件不存在时,将自动建立一个新文件 (27)有如下程序: #include using namespace std; class Toy{ public: Toy(char* _n) { strcpy (name,_n); count++;} ~Toy(){ count--; } char* GetName(){ return name; } static int getCount(){ return count; } private: char name[10]; static int count; }; int Toy::count=0; int mail(){ Toy t1(“Snoopy”),t2(“Mickey”),t3(“Barbie”); cout

(28)有如下程序 #include using namespace std; class A { public: A(int i):rl(i) {} void print() {cout<<’e’

相关文档
最新文档