您好,欢迎来到尚车旅游网。
搜索
您的当前位置:首页大工《C&C++语言程序设计》课程考试模拟试卷A11

大工《C&C++语言程序设计》课程考试模拟试卷A11

来源:尚车旅游网
一、单项选择题(本大题共10小题,每小题3分,共30分)

A1、已知int x=2,y=8;执行 x*=y+2;后x的值是( A )。 A.20 C.16

B.18 D.12

A2、下列while循环的执行次数是( A )。while(int i=0) i++; A.0 C.5

D3、以下不属于C语言关键字的是( D )。 A.short C.case

B.int D.DIM B.1 D.无限

C4、当一个类对象离开它的作用域时, 系统将自动调用该类的( C )。 A.构造函数 C.析构函数

D5、下列哪个函数不是类的成员函数。( D ) A.析构函数 C.拷贝构造函数

B.构造函数 D.友元函数 B.拷贝构造函数 D.默认构造函数

B6、在执行int a[][3]={1,2,3,4,5,6};语句后,a[0][0]的值是( )。 A.4 C.2

B.1 D.5

C7、C++中用3个保留字实现异常处理,除了throw和catch外,还有( )。 A.if C.try

B.class D.return

A8、当类的继承方式为( )时,基类中的公有成员和保护成员都以私有成员身份出现在派生类中,而基类的私有成员在派生类中不可直接访问。 A.私有继承 C.保护继承

B.公有继承 D.以上都不是

A9、作用域分辨符可以用来限定要访问的成员所在的类的名称,它的符号表示为( )。 A.:: C.;

B10、下列哪个函数的作用是字符串比较( )。 A.strlen( )

B.strcmp( )

大工《C/C++语言程序设计》课程考试 模拟试卷(A) 第1页 共8页

B.?: D.\\

C.strcat( )

C1、指出下面合法的标识符是( )。 A.3ab C._stu2

D.strcpy( )

B.int D.$abc

D2、设有数组定义char array [ ]=\"Public\";则数组array所占的空间为( )。 A.4个字节 C.6个字节

C3、下面表达式中错误的是( )。 A.b=a++ C.a+b=5

B.a/=2 D.a=5,b=6,c=7 B.5个字节 D.7个字节

D4、在定义int a[5];之后,对a的引用正确的是( )。 A.a[5] C.a(5)

B.a[4.3] D.a[0]

B5、执行下面的程序段后,输出结果是( )。main(){char a[]=\"english\";printf(\"%c\A.engli C.english

B.e D.sh

B6、当类的继承方式为( )时,基类的公有和保护成员的访问属性在派生类中不变,而基类的私有成员不可直接访问。 A.私有继承 C.保护继承

B.公有继承 D.以上都不是

A7、类中将关键字( )写在函数体之前函数头之后,说明该函数是一个常成员函数(或const成员函数),可以防止函数改变数据成员的值。 A.const C.friend

B.static D.void

C8、设int n=10,i=3;则赋值运算n%=i+1执行后,n的值是( )。 A.0 C.2

D9、下列选项中正确的语句是( )。 A.x++ C.y+5=6;

B.int(x+5) D.x=y+5; B.3 D.1

A10、绑定工作在编译连接阶段完成的情况称为( )。 A.静态绑定

B.动态绑定

大工《C/C++语言程序设计》课程考试 模拟试卷(A) 第2页 共8页

C.重载 D.继承

二、判断题(本大题共10小题,每小题3分,共30分)

A1、循环语句的循环体可能一次都不执行。( ) A.正确

B.错误

B2、使用cin和cout进行输入输出操作的程序必须包含头文件math.h。( ) A.正确

B.错误

B3、C++源程序文件的扩展名是.exe。( ) A.正确

B.错误 B4、关键字中,用以说明类中公有成员的是private。( ) A.正确

B.错误

B5、一个类只能有一个对象。( ) A.正确

B.错误 B6、拷贝构造函数不是类的成员函数。( ) A.正确

B.错误 B7、内联函数的关键字为friend。( ) A.正确

B.错误 A8、构造派生类的对象时,就要对基类数据成员、新增数据成员和成员对象的数据成员进行初始化。(A.正确

B.错误

B9、一个派生类可以同时有多个基类,这种情况称为单继承。( ) A.正确

B.错误

A10、抽象类不能实例化。( ) A.正确

B.错误 B1、在C++类中可以包含私有、公有和友元三种具有不同访问控制权的成员。( ) A.正确

B.错误

B2、定义枚举类型的关键字是union。( ) A.正确

B.错误 B3、设有定义int x; double v;则5+x+v值的数据类型是int。( ) A.正确

B.错误

B4、strcat()函数的作用是求字符串长度。( ) A.正确

B.错误 A5、说明静态数据成员时,前边要加关键字static。( )

大工《C/C++语言程序设计》课程考试 模拟试卷(B) 第3页 共8页

)A.正确

A6、成员函数可以重载。( ) A.正确

B7、delete的功能是动态分配内存。( ) A.正确

B.错误

B.错误

B.错误

B8、关键字中,用以说明类中公有成员的是protected。( ) A.正确

B.错误

A9、流是一种抽象,它负责在数据的生产者和数据的消费者之间建立联系,并管理数据的流动。( ) A.正确

B.错误

A10、类型兼容规则是指在需要基类对象的任何地方,都可以使用公有派生类的对象来替代。( ) A.正确

B.错误

三、填空题(本大题共5个空,每空3分,共15分)

1、数组元素a[i]是该数组中的第 i+1 个元素。 2、假定x=10, 则表达式(x<=10?20:30)的值为 20 。

3、当在程序中执行到 break 语句时,将跳出循环体或switch语句。

4、若要把整型变量y定义为x的引用,则所使用的定义语句为 int &y=x; 。 5、在函数体中又调用自身函数称为 递归 调用。

1、执行 delete []p 操作将释放由P所指向的动态分配的数组空间。

2、当程序执行到 continue 语句时,将结束所在循环语句中循环体的一次执行。

3、设二维数组a[10][30],每个数组元素占1个存储单元,该数组共占用 300 个存储单元,若第一个数组元素的起始地址是LOC(a[0][0])=SA,当该数组按行优先顺序存放时,元素a[3][4]的起始地址为 SA+94 。

4、定义一个模板函数或模板类时要用到的第一个C++保留字是 template 。

四、阅读下列程序,请在答题卡上写出输出结果(本大题共2小题,每小题5分,共10分)

1、输出结果:12457810 ________________________ #include void main() { int i;

大工《C/C++语言程序设计》课程考试 模拟试卷(B) 第4页 共8页

}

for(i=1;i<=10;i++) { if(i%3==0) continue; cout<2、输出结果:

i=0,k=2 i=0,k=2

_________________________ #include class CSample {

private: int i; static int k; public: CSample(); void Display(); };

CSample::CSample() { i=0; k++; }

void CSample::Display() { cout<<\"i=\"<int CSample::k=0; void main() { CSample a,b; a.Display(); b.Display(); }

1、输出结果: sum=5050

==============

1、

#include void main( )

大工《C/C++语言程序设计》课程考试 模拟试卷(B) 第5页 共8页

{ }

int i(1), sum(0); do{ sum+=i; i++;

}while(i<=100);

cout<<”sum=”<2、输出结果:

Constructor!0 Constructor!5

-------------------------------------------------- #include class A { int a,b; public: A(int aa=0, int bb=0): a(aa), b(bb) { cout<<”Constructor!”<void main() { A x, y(2, 3); }

五、程序设计题(本大题共2小题,第1小题5分,第2小题10分,共15分)

1、编写一个程序求“水仙花数”。“水仙花数”是指一个三位数,其各位数字的立方和恰好等于该数本身。例如,153=1*1*1+5*5*5+3*3*3,所以153是“水仙花数”。

1、(程序中变量名称定义,及实现过程可能不统一,请酌情给分。) #include void main() { int i,a,b,c; for(i=100;i<=999;i++) { a=i/100; b=i/10-a*10; c=i-b*10-a*100; if(i==a*a*a+b*b*b+c*c*c) cout<大工《C/C++语言程序设计》课程考试 模拟试卷(B) 第6页 共8页

}

}

2、定义一个Circle类,包括数据成员Radius(半径)、构造函数和析构函数,成员函数GetArea()用来计算圆的面积。创建一个Circle的对象进行测试。

#include class Circle {

public:

Circle(double radius){Radius=radius; } ~ Circle(){}

double GetArea(){return 3.14* Radius * Radius; } private:

double Radius; };

void main() { double radius;

cout<<\"请输入圆的半径:\"; cin>>radius;

Circle p (radius);

cout<<\"半径为\"<< radius<<\" 的圆的面积为:\"<< p.GetArea()<1、编写一个程序,求解猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃前一天剩下桃子的一半零一个。到第10天早上想再吃时,见只剩一个桃子了。求第一天共摘多少桃子。 1、程序中变量名称定义,及实现过程可能不统一,请酌情给分。) #include void main() { int day, x1, x2; day=9; x2=1; while(day>0) { x1=(x2+1)*2; x2=x1; day--; } printf(“total=%d\\n”,x1); }

2、编写一个程序,使输入的一个字符串按反序存放,在主函数中输入和输出字符串。

大工《C/C++语言程序设计》课程考试 模拟试卷(B) 第7页 共8页

#include #include

void inverse(char str[]) {

char t; int i,j;

for(i=0,j=strlen(str);ivoid main() {

char str[100];

printf(“Input string:”); scanf(“%s”,str); inverse(str);

printf(“Inverse string:%s\\n”,str); }

大工《C/C++语言程序设计》课程考试 模拟试卷(B) 第8页 共8页

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- sceh.cn 版权所有 湘ICP备2023017654号-4

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务