预览加载中,请您耐心等待几秒...
1/7
2/7
3/7
4/7
5/7
6/7
7/7

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

C语言程序设计A期末模拟试题一 一、单项选择题(每小题2分,共20分) 1.由C++目标文件连接而成的可执行文件的缺省扩展名为()。 A.cppB.exeC.objD.lik 2.x>0&&x<=10的相反表达式为()。 A.x<=0||x>10B.x<=0&&x>10 C.x<=0||x<=10D.x>0&&x>10 3.在下面的一维数组定义中,哪一个有语法错误。(C) A.inta[]={1,2,3};B.inta[10]={0}; C.inta[];D.inta[5]; 4.假定p是具有double类型的指针变量,则表达式++p使p的值(以字节为单位)增 加(C)。 A.1B.4C.sizeof(double)D.sizeof(p) 5.当#include后面的文件名用双引号括起来时,寻找被包含文件的方式是(B)。 A.直接按系统设定的标准方式搜索目录 B.先在源程序所在目录搜索,再按系统设定的标准方式搜索目录 C.仅仅搜索源程序所在目录 D.搜索当前逻辑盘上的所有目录 6.假定指针变量p定义为“int*p=newint(100);”,要释放p所指向的动态内存,应 使用语句(A)。 A.deletep;B.delete*p;C.delete&p;D.delete[]p; 7.假定AA为一个类,a为该类公有的数据成员,px为指向该类对象的一个指针,则访 问px所指对象中数据成员a的格式为()。 A.px(a)B.px[a]C.px->aD. 8.栈具有()的操作特性。 A.先进先出B.先进后出C.进出无序D.进出任意 9.对于任一个类,用户所能定义的构造函数的个数至多为()。 A.0B.1C.2D.任意个 10.下列对派生类的描述中错误的说法是:()。 A.派生类至少有一个基类 B.派生类可作为另一个派生类的基类 C.派生类除了包含它直接定义的成员外,还包含其基类的成员 D.派生类所继承的基类成员的访问权限保持不变 二、填空题(每题2分,共20分) 1.C++语言是在_________语言的基础上发展起来的。 2.当执行cin语句时,从键盘上输入每个数据后必须接着输入一个________符,然后才 能继续输入下一个数据。 3.假定x是一个逻辑量,则x&&false的值为__________。 4.元素类型为char的二维数组a[10][30]共占用________字节的存储空间。 5.局部变量具有局部生存期,存放在内存的______栈______区中。 6.已知语句“cout<<p;”的输出是“Hello!”,则语句“cout<<*p;”输出的是__________。 7.对类中常量成员的初始化是通过在构造函数中给出的______________来实现的。 8.在重载一个单目运算符时,参数表中没有参数,说明该运算符函数只能是类的 _____________。 9.假定用户为类AB定义了一个构造函数“AB(intaa):a(aa){}”,则定义该类的对象时, 有________种定义格式。 10.在每个成员函数中,隐含的第一个参数的参数名________为。 三、程序填充题(对程序、函数或类中划有横线的位置,根据题意按标号把合适的内容填写 到程序下面相应标号的后面。每小题6分,共24分) 1.斐波那契数列的第1和第2个数分别为0和1,从第三个数开始,每个数等于其前两个 数之和。求斐波那契数列中的前20个数,要求每行输出5个数。 #include<> voidmain(){ intf,f1,f2,i; cout<<”斐波那契数列:\n”; f1=0;f2=1; cout<<setw(6)<<f1<<setw(6)<<f2; for(i=3;i<=20;i++){ f=______(1)______; cout<<setw(6)<<f; if(_____(2)______)cout<<endl; f1=f2; f2=____(3)_______; } cout<<endl; } (1)(2)(3) 2.对数组a[n]按升序进行的选择排序算法 voidSelectSort(inta[],___(1)___) { inti,j,k; for(i=1;i<n;i++){已知一个类的定义如下: #include<> classAA{ inta[10]; intn; public: voidSetA(intaa[],intnn);#include<> #include<> voidmain() { inta[8]={25,48,32,85,64,18,48,29}; intmax,min; max=min=a[0]; for(inti=0;i<8;i++){ if(x>a[i])max=a[i]; if