C语言程序设计A期末模拟试题一.doc_第1页
C语言程序设计A期末模拟试题一.doc_第2页
C语言程序设计A期末模拟试题一.doc_第3页
C语言程序设计A期末模拟试题一.doc_第4页
C语言程序设计A期末模拟试题一.doc_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C语言程序设计A期末模拟试题一一、单项选择题(每小题2分,共20分)1. 由C+目标文件连接而成的可执行文件的缺省扩展名为( )。 A. cpp B. exe C. obj D. lik2. x0 & x=10的相反表达式为( )。A. x10 B. x10C. x=0 | x0 & x103. 在下面的一维数组定义中,哪一个有语法错误。( C ) A. int a=1,2,3; B. int a10=0;C. int a; D. int a5;4. 假定p是具有double类型的指针变量,则表达式+p使p的值(以字节为单位)增加( C )。A. 1 B. 4 C. sizeof(double) D. sizeof(p)5. 当#include后面的文件名用双引号括起来时,寻找被包含文件的方式是( B )。 A. 直接按系统设定的标准方式搜索目录 B. 先在源程序所在目录搜索,再按系统设定的标准方式搜索目录 C. 仅仅搜索源程序所在目录 D. 搜索当前逻辑盘上的所有目录6. 假定指针变量p定义为“int *p=new int(100);”,要释放p所指向的动态内存,应使用语句( A )。 A. delete p; B. delete *p; C. delete &p; D. delete p;7. 假定AA为一个类,a为该类公有的数据成员,px为指向该类对象的一个指针,则访问px所指对象中数据成员a的格式为( )。 A. px(a) B. pxa C. px-a D. px.a8. 栈具有( )的操作特性。 A. 先进先出 B. 先进后出 C. 进出无序 D. 进出任意9. 对于任一个类,用户所能定义的构造函数的个数至多为( )。 A. 0 B. 1 C. 2 D. 任意个10. 下列对派生类的描述中错误的说法是:( )。 A. 派生类至少有一个基类 B. 派生类可作为另一个派生类的基类 C. 派生类除了包含它直接定义的成员外,还包含其基类的成员 D. 派生类所继承的基类成员的访问权限保持不变二、填空题(每题2分,共20分)1. C+语言是在_语言的基础上发展起来的。2. 当执行cin语句时,从键盘上输入每个数据后必须接着输入一个_符,然后才能继续输入下一个数据。3. 假定x是一个逻辑量,则x & false的值为_。4. 元素类型为char的二维数组a1030共占用_ _字节的存储空间。5. 局部变量具有局部生存期,存放在内存的_栈_区中。6. 已知语句“coutp;”的输出是“Hello!”,则语句“cout*p;”输出的是_。7. 对类中常量成员的初始化是通过在构造函数中给出的_来实现的。8. 在重载一个单目运算符时,参数表中没有参数,说明该运算符函数只能是类的_。9. 假定用户为类AB定义了一个构造函数“AB(int aa):a(aa)”,则定义该类的对象时,有_种定义格式。10. 在每个成员函数中,隐含的第一个参数的参数名为_。 三、程序填充题(对程序、函数或类中划有横线的位置,根据题意按标号把合适的内容填写到程序下面相应标号的后面。每小题6分,共24分)1. 斐波那契数列的第1和第2个数分别为0和1 ,从第三个数开始,每个数等于其前两个数之和。求斐波那契数列中的前20个数,要求每行输出5个数。#includevoid main() int f,f1,f2,i; cout” 斐波那契数列:n”; f1=0; f2=1; coutsetw(6)f1setw(6)f2; for(i=3;i=20;i+) f=_(1)_; coutsetw(6)f;if(_(2)_) coutendl;f1=f2;f2=_(3)_; coutendl; (1) (2) (3) 2. 对数组an按升序进行的选择排序算法 void SelectSort(int a, _(1)_) int i,j,k; for(i=1;in;i+) /进行n-1次选择和交换 k=i-1; for(j=i;jn;j+) if(ajak) _(2)_; int x=ai-1; ai-1=ak; _(3)_; (1) (2) (3) 3. 已知一个类的定义如下:#includeclass AA int a10;int n;public:void SetA(int aa, int nn); /用数组aa初始化数据成员a, /用nn初始化数据成员nint MaxA(); /从数组a中前n个元素中查找最大值void SortA(); /采用选择排序的方法对数组a中前n个元素 /进行从小到大排序 void InsertA();/采用插入排序的方法对数组a中前n个元素进行从小到大排序void PrintA(); /依次输出数组a中的前n个元素; 该类中MaxA()函数的实现如下,请在标号位置补充适当的内容。int _(1)_ int x=a0;for(int i=1; ix) _(2)_;_(3)_;(1) (2) (3)4class A int a; public: A() a=0; _(1)_ /定义构造函数,用参数aa初始化数据成员a ; main() _(2)_; /定义类A的指针对象p _(3)_; /用p指向动态对象并初始化为整数5 (1) (2) (3)四、理解问答题(写出前两小题的程序运行结果和指出后两小题的程序(或函数)所实现的功能。每小题6分,共24分) 1. #include #include void main() int a8=25,48,32,85,64,18,48,29; int max,min; max=min=a0; for(int i=0; iai) max=ai; if(xai) min=ai; coutmax:maxendl; coutmin:minendl; 2. #include void main() for(int i=1,s=0;i20;i+) if(i%2=0 | i%3=0) continue; couti ; s+=i; coutsendl; 3. void trans(int x) char a10; int i=0,rem; do rem=x%16; x=x/16; if(rem0) couta-i; coutendl; 4. char *f(char *s) int n=strlen(s); char* r=new charn+1; for(int i=0; i=a & sims) coutError!endl; exit(1);MS=ms;n=nn;a=new intMS;for(int i=0; iMS; i+) ai=aai;AA* Reverse(); /对于调用该函数的对象,将其a数组中前n个 /元素值按相反的次序排列,返回指向该对象的指针。;C语言程序设计A期末模拟试题一参考答案一、 单选题1. B2. A3. C4.B5.C6.A7.C8.B9.D10.D二、 填空题1. C2. 空白3. false(或0) 4. 3005.栈6.H7. 初始化表8. 成员函数9. 110. this三、程序填充题1. (1) f1+f2 (2) i%5=0 (3) f2. (1) int n (2) k=j (3) ak=x3. (1) AA:MaxA() (2) x=ai (3) return x4. (1) A(int aa):a(aa) (2) A *p (3) p=new A(5)四、理解问答题1. max:85 min:18 2. 1 5 7 11 13 37 3.此函数用于把十进制整数x转换为十六进制数字串输出4.根据参数s所指向的字符串,生成一个由r所指向的新字符串并返回,该字符串使s字符串中的小写字母均变为大写。五、编程题1. #include

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论