(完整版)C++程序设计试题.

上传人:zh****71 文档编号:145076730 上传时间:2020-09-16 格式:PDF 页数:6 大小:64.74KB
返回 下载 相关 举报
(完整版)C++程序设计试题._第1页
第1页 / 共6页
(完整版)C++程序设计试题._第2页
第2页 / 共6页
亲,该文档总共6页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《(完整版)C++程序设计试题.》由会员分享,可在线阅读,更多相关《(完整版)C++程序设计试题.(6页珍藏版)》请在金锄头文库上搜索。

1、第 1 页 一、判断题(每小题1 分,共 10 分) 1( 1)1、说明函数原型时不需要指明每个函数参数的名字,只需要说明每个 参数的类型和返回值类型就可以了。 2( 1 )2、所有的表达式都有值。 1( 2 )3、程序的编译是以文件为单位的,因此将程序分到多个文件中可以减 少每次对程序修改所带来的编译工作量。 2( 1 )4、类的静态数据成员需要在定义每个类的对象时进行初始化。 2( 2 )5、基类中被说明为 protected和 private的成员只能被其派生类的成 员函数访问,不能被其它的函数访问。 1( 1 )6、当将一个类 S定义为另一个类 A的友元类时,类 S的所有成员函数 都可

2、以直接访问类A的所有成员。 2( 1 )7、当函数的返回值是数组类型的,传递的是数组第一个元素的地址。 1( 1 )8、如果派生类的成员函数的原型与基类中被定义为虚函数的成员函数 原型相同,那么,这个函数自动继承基类中虚函数的特性。 2( 2 )9、字符串 hello,world”在内存中存放时,占用11 个字节的空间。 1( 1 )10、用 new动态申请的内存空间,必须用delete来释放 。 二、单项选择题:(每小题 2 分,共 30 分) 1在每个 C程序中都必须包含有这样一个函数,该函数的函数名为_a_。 Amain BMAIN Cname Dfunction 2设 x 和 y 均为

3、 bool 量,则 x B. int a5; C. int a3=1,3,5,2; D. int a(10); 7. 以下正确的说法是 _b_。 A. 用户调用标准库函数前,必须重新定义 B. 用户可以重新定义标准库函数,若如此,该函数将失去原有含义 C. 系统不允许用户重新定义标准库函数 D. 用户调用标准库函数前,不必使用预编译命令将该函数所在文件包括到 用户源文件中 8. 文件包含命令中被包含的文件的扩展名_a_。c A. 必须是 .h B. 不能是 .h C. 可以是 .h 或.cpp D. 必须是 .cpp 9. 要使语句“ p=new int1020;”能够正常执行, p 应定义为

4、 _a_。d A. int *p; B. int *p; C. int *p20; D. int(*p)20; 10. 有关构造函数的说法不正确的是_d_ 。c A、构造函数名字和类的名字一样。 B. 构造函数无任何函数类型。 C. 构造函数有且只有一个 D. 构造函数在说明类对象时自动执行。 11. 假定 AA为一个类, a 为该类私有的数据成员,若要在该类的一个成员函数中 访问它,则书写格式最好为_b_。a A. a B. AA:a C. a() D. AA:a() 12、下列关键字中, _b_不是类定义中使用的关键字。 A.class B.switch C.private D.publi

5、c 13. 当类中的一个整型指针成员指向一块具有n*sizeof(int)大小的存储空间时, 它最多能够存储 _。个整数。 a 对象 A. n B. n+1 C. n-1 D. 1 14. 假定 AB 为一个类,则执行“AB a, b(3), *p;”语句时共调用该类构造函数 的次数为 _a_。 A. 2 B. 3 C. 4 D. 5 15. 在重载一个运算符时 ,其参数表中没有任何参数 ,这表明该运算符是 _b_。 A. 作为友元函数重载的1 元运算符 B. 作为成员函数重载的1 元运算符 C. 作为友元函数重载的2 元运算符 D. 作为成员函数重载的2 元运算符 三、填空题:(每空 2 分

6、,共 20 分) 1、从一条函数原型语句 “int fun1(void);”可知,该函数的返回类型为 _int_ , 该函数带有 _1_个参数。 2、 假定 x 是一个逻辑量,则 x | false的值为 _。 3、作为语句标号使用的C+ 保留字 case 和 defaule 只能用于 _选择_语句的 定义体中。 4、若多个基类及其派生类中都定义了同名函数成员,要访问相应函数时,就需要 在函数名前加上 _域_和_ 5、C+支持两种多态性:_时的多态性和_时的多态性。 6、假定用户为类AB定义了一个构造函数“AB(int aa, char *bb=NULL):a(aa),b(bb)” ,则 该类

7、中至少包含有_个数据成员。 7、类是用户定义的类型,具有类类型的变量称作_对象_。 四、程序填充,对程序、函数或类中划有横线的位置,根据题意按标号把合适的内 容填写到程序下面相应标号的后面(每小题6 分,共 18分) 1. 打印出 2 至 99 之间的所有素数 ( 即不能被任何数整除的数 ) 。 (每空 2 分) #include #include void main() int i,n; for(n=2; _(1)_; n+) int temp=int(sqrt(n); /求出 n 的平方根并取整 for(i=2; _(2)_; i+) if(n%i=0) _(3)_; if(itemp)

8、coutn ; coutn; 答案为: (1) n100 (2) i=temp (3) break 2. 下面是对按从小到大排列的有序数组an 中进行二分查找x 的算法,若查找成 功返回该元素下标,否则返回-1。 (每空 2 分) int BinarySearch(int a,int n,int x) int low=0, high=n-1; /定义并初始化区间下界和上界变量 int mid; /定义保存中点元素下标的变量 第 3 页 第 4 页(共6 页) while(low=high) mid=_(1)_; if(x=amid) _(2)_; else if(xamid) high=mid

9、-1; else _(3)_; return -1; 答案为: (1) (2) (3) 3 (每空 2 分) class A int a,b; public: A(int aa=0, int bb=0) _(1)_ /分别用 aa 和 bb 对应初始化 a 和 b ; main() _(2)_ ; /定义类 A的对象 x 并用 5 初始化,同时定义 y 并用 x 初始化 _(3)_ ; /定义 p 指针,使之指向对象x 答案为: (1) (2) (3) 五、分析程序写出运行结果。 (每小题 5 分,共 10 分) 1、 #include class Add private: int x,y;

10、public: Add(int a,int b) x=a;y=b; cout调用构造函数 1。endl; Add(Add int add()return x+y; ; void main() Add p1(2,3); Add p2(p1); coutp2.add()endl; 运行结果为: #include class A private: /其它成员 public: virtual void func(int data)cout”class A: ”dataendl; void func(char *str) cout”class A: ”strendl; ; class B: public A / 其它成员 public: void func() cout”function in B without parameter! n”; void func(int data) cout”class B: ”dataendl; void func(char *str) cout”class B: ”strfunc(1); pA- func( “haha”); return 0; 输出结果为: 六、编程题(共 12 分) 求满足不等式 22+42+.+n21000 的最大 n 值,假定分别用 i 和 s 作为取偶数值和 累加值的变量,并限定使用do 循环编程。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号