C语言程序设计A期末模拟试题一

2019-08-17 11:58

C语言程序设计A期末模拟试题一

一、单项选择题(每小题2分,共20分) 1.

由C++目标文件连接而成的可执行文件的缺省扩展名为( )。

A. cpp B. exe C. obj D. lik 2.

x>0 && x<=10的相反表达式为( )。

A. x<=0 || x>10 B. x<=0 && x>10 C. x<=0 || x<=10 D. x>0 && x>10 3.

在下面的一维数组定义中,哪一个有语法错误。( C )

A. int a[]={1,2,3}; B. int a[10]={0}; C. int a[]; D. int a[5]; 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. px[a] C. px->a D. px.a 8.

栈具有( )的操作特性。

A. 先进先出 B. 先进后出 C. 进出无序 D. 进出任意 9.

对于任一个类,用户所能定义的构造函数的个数至多为( )。

A. 0 B. 1 C. 2 D. 任意个 10. 下列对派生类的描述中错误的说法是:( )。 A. 派生类至少有一个基类

B. 派生类可作为另一个派生类的基类

C. 派生类除了包含它直接定义的成员外,还包含其基类的成员 D. 派生类所继承的基类成员的访问权限保持不变 二、填空题(每题2分,共20分) 1. 2.

C++语言是在_________语言的基础上发展起来的。

当执行cin语句时,从键盘上输入每个数据后必须接着输入一个________符,然后才

能继续输入下一个数据。 3. 4. 5. 6. 7. 8.

假定x是一个逻辑量,则x && false的值为__________。

元素类型为char的二维数组a[10][30]共占用____ ____字节的存储空间。 局部变量具有局部生存期,存放在内存的______栈______区中。

已知语句“cout<

_____________。 9.

假定用户为类AB定义了一个构造函数“AB(int aa):a(aa){}”,则定义该类的对象时,

有________种定义格式。

10. 在每个成员函数中,隐含的第一个参数的参数名为________。

三、程序填充题(对程序、函数或类中划有横线的位置,根据题意按标号把合适的内容填写到程序下面相应标号的后面。每小题6分,共24分)

1. 斐波那契数列的第1和第2个数分别为0和1 ,从第三个数开始,每个数等于其前两个数之和。求斐波那契数列中的前20个数,要求每行输出5个数。 #include void main() { int f,f1,f2,i;

cout<<” 斐波那契数列:\\n”; f1=0; f2=1;

cout<

if(_____(2)______) cout<

f2=____(3)_______; }

cout<

(1) (2) (3) 2. 对数组a[n]按升序进行的选择排序算法 void SelectSort(int a[], ___(1)___) {

int i,j,k;

for(i=1;i

for(j=i;j

if(a[j]

int x=a[i-1]; a[i-1]=a[k]; ___(3)___;

} }

(1) (2) (3)

3. 已知一个类的定义如下: #include class AA { int a[10]; int n; public:

void SetA(int aa[], int nn); //用数组aa初始化数据成员a, //用nn初始化数据成员n

int MaxA(); //从数组a中前n个元素中查找最大值 void SortA(); //采用选择排序的方法对数组a中前n个元素 //进行从小到大排序

void InsertA();//采用插入排序的方法对数组a中前n个元素进行从小到大排序 void PrintA(); //依次输出数组a中的前n个元素 };

该类中MaxA()函数的实现如下,请在标号位置补充适当的内容。 int ____(1)_____ {

int x=a[0];

for(int i=1; i

if(a[i]>x) ___(2)___;

___(3)___; }

(1) (2) (3) 4.class 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 a[8]={25,48,32,85,64,18,48,29}; int max,min; max=min=a[0];

for(int i=0; i<8; i++) { if(x>a[i]) max=a[i]; if(x

cout<<\ cout<<\ }

2. #include void main() {

for(int i=1,s=0;i<20;i++) {

if(i%2==0 || i%3==0) continue; cout<

}

cout<

3. void trans(int x) {

char a[10]; int i=0,rem;


C语言程序设计A期末模拟试题一.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:二号石门开口施工措施

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: