广东201406计算机二级(C++)原题

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

else break;
}
cout<<y;
}
A、1.5
B、1.6
C、2.4
D、2.0
12、派生类的对象对它的基类成员中( )是可以访问的。
A、公有继承的私有成员
B、私有继承的公有成员
C、保护继承的公有成员
D、私有继承的保护成员
13、有如下类定义:
class Foo {int br;}
则 Foo 类的成员 br 是(
}
cout<<x<<endl;
}
A、4
B、1
C、10
D、3
7、若有下面的程序片段:
int a[2]={0},*p[3],i;
for(i=0;i<3;i++)
p[i]=&a[i*4];
则对数组元素的错误引用是( )
A、a[0]
B、p[0]
C、*(*p+0)
D、*p[0]
8、下面程序段的运行结果是(

{ //***5*** float salary;
public: teacher() {cout<<"Teacher class constructor"<<endl;} ~teacher() {cout<<"Teacher class constructor"<<endl;}
源自文库
4、逻辑运算符两侧运算对象的数据类型( )
A、只能是整型或字符型数据
B、可以是任何类型的数据
C、只能是 0 或非 0 数
D、只能是 0 或 1
5、下面叙述中不正确的是( )
A、局部变量若不初始化,则系统默认它的值为 0
B、使用全局变量可以从被调用函数中获取更多个操作结果
C、全局变量若不初始化,则系统默认它的值为 0
union{
char a[4];
int b[4];
float c[2];
}data;
A、16
B、给出的答案都不对 C、8
D、28
10、下面叙述中不正确的是( )
A、在一个函数内定义的变量只在本函数范围内有效
B、函数中的形参是局部变量
C、在一个函数内的复合语句中定义的变量在本函数范围内有效
D、在不同的函数中可以使用相同名字的变量
for(i=0;str[i]!=0;i++) m_str[i]=str[i];
//***4*** } private: char m_str[32]; }; void main() { NameCtrl *p;
AnimalName Obj1("Dog"); p=&obj1; p‐>GetName(); cout<<Obj1.GetName2()<<endl; return; }
#include <iostream.h> class NameCtrl { public:
//***1*** }; class AnimalName:public NameCtrl { public:
void GetName() {
cout<<"AnimalName"<<endl; } //***2*** { return m_str; } //***3*** { int i;
A、.obj
B、.c
C、.cpp
D、.exe
19、以下不能对数组 x 进行正确初始化的语句是( )
A、int x[5]={1,2,3}; B、int x[]={1,2,3,4,5}; C、int x[]={};
D、int x[5]={1,2,3,4,5};
20、C++语言的跳转语句中,对 break 和 continue 说法正确的是( )
4、【综合应用题】文件素材的存取路径为 D:\SRC\4000424,打开 proj4.cpp,按照以下要求, 完成操作: 已知一个源程序文件 proj4.cpp,其中定义的类并不完整,请按照一下要求将程序补充完整。 程序运行结果如图示: 1)在类 person 中定义 name 为字符指针类型,age 为整型,请在注释//***1***之后添加适 当语句; 2)设置类 student 公有继承类为 person,请在注释//***2***之后添加适当语句; 3)定义析构函数 student,请在注释//***3***之后添加适当语句; 4)设置类 teacher 公有继承类为 person,请在注释//***4***之后添加适当语句; 5)在类 teacher 中定义 major 为字符指针类型,请在注释//***5***之后添加适当语句。(25 分)
2、【简单操作题】文件素材的存取路径为 D:\SRC\4000418,打开 proj2.cpp,按照以下要求, 完成操作: 1)请补充函数 fun,该函数的功能是:根据整型参数 m 的值,计算如下图公式的值。在 C++ 中可调用 log(n)函数求 ln(n);例如,若 m 的值为 20,则 fun 函数的值为 6.50658; 2)请按照注释的要求在程序的“_____”部分填下适当的内容并去掉程序中的“_____”,使 程序能正确运行,保存文件。(20 分)
#include <iostream.h>
#include <math.h>
double fun(int m)
{ int i;
double s=_________;
//#1
for(______;________;_______) //#2 以下循环计算 ln(1)+ln(2)+……+ln(m)的值
s=_______;
___________; //#1 定义整型变量 s1,表示分母 cout<<"请输入 m 的值"<<endl; cin>>m; ___________; //#2 定义单精度变量 s i=1; while(i<=m) {
s1=_______; //#3 求每一项分母 s=________; //#4 求多项式的值 __________; //#5 } cout<<s<<" "; }
#include <iostream.h> class person {
//***1*** public:
person() {cout<<"Person class constructor"<<endl;} ~person() {cout<<"Person class constructor"<<endl;} }; //***2*** { char *depertment; int level; public: student() { cout<<"Student class constructor"<<endl; } //***3*** { cout<<"Student class constructor"<<endl; } }; //***4***
B、无确定值
C、变量 p 的地址值 D、20
16、若有以下函数调用语句( )
f(m+n, x+y, f(m+n, x+y));
在此函数调用语句中的实参的个数是(

A、5
B、3
C、4
D、6
17、可以赋给指针变量的唯一整数是(

A、3
B、0
C、1
D、2
18、C++源程序文件经过编译后,生成的目标文件扩展名是( )
D、当函数调用完后,静态局部变量的值不会消失
6、下面程序的输出结果是( )
#include <iostream.h>
void main()
{ int x,y;
for(x=1,y=1;x<=100;x++)
{ if(y>=10) break;
if(y%3==1)
{ y+=3;
continue;
}
y‐=3;
3. 下列程序的运行结果是( )
#include <iostream.h>
void main()
{ char str[10]=”abcde”, *p=str, *q;
q=p++;
cout<<p<<”,”<<q<<endl;
}
A、bcde, abcde
B、bcde, b
C、bcde, bcde D、abcde, abcde
//请在两条星线之间填入相应的代码 /*****************************************/ /*****************************************/ } void main() { char s[81],c; cout<<"请输入字符串"<<endl; cin.getline(s,81); cout<<"请输入一个字符"<<endl; cin>>c; fun(s,c); cout<<s;
}
4、【综合应用题】文件素材的存取路径为 D:\SRC\4000420,打开 proj4.cpp,按照以下要求, 完成操作: 已知一个源程序文件 proj4.cpp,程序通过继承关系,实现对姓名的控制。类 NameCtrl 是对 名字访问的接口。AnimalName 实现对动物名字的设置和输出。程序运行结果如图示: 这个程序不完整,请按照以下要求将程序补充完整: 1)在类 NameCtrl 中定义函数 GetName 为虚函数,请在注释//***1***之后添加适当语句; 2)定义函数 GetName2()实现获得动物名字的缓冲。但只获得允许操作这个常成员函数,请 在注释//***2***之后添加适当语句; 3)实现 AnimalName 的构造函数,请在注释//***3***之后添加适当语句; 4)完成 AnimalName 的构造函数,实现对名字的处理,请在注释//***4***之后添加适当语 句。(25 分)
一. 单选题
1.以下程序段( )
x=0;
do
{ x=x*x; }
while(!x);
A、循环执行一次 B、循环执行两次
C、是死循环
D、有语法错误
2. 下面程序段的输出结果是(

char str[]=”abcde”;
cout<<*(str+4)<<endl;
A、d
B、e
C、输出语句有错,无结果输出 D、’\0’
11、下面程序运行时,若从键盘上输入 3.6 2.4 并回车,则输出结果是( )
#include <iostream.h>
#include <math.h>
void main()
{ float x,y,z;
cin>>x>>y;
z=x/y;
while(1)
{ if(fabs(z)>1.0)
{ x=y; y=z; z=x/y; }
char n[]=”12345”,*p;
int s=0;
for(p=n;*p!=’\0’;p++) s=10*s+*p‐‘\0’;
cout<<s<<endl;
A、有语法错误,无输出结果 B、123450
C、12345
D、54321
9、已知有如下共用体变量 data,则 data 所占的字节数是( )

A、公有成员函数 B、私有成员函数 C、私有数据成员 D、公有数据成员
14、C++语言程序从 main()函数开始执行,所以这个函数要写在( )
A、程序文件的任何位置
B、程序文件的开始
C、程序文件的最后
D、它所调用的函数的前面
15、在 int x=20, *p=&x;语句中,p 的值是( )
A、变量 x 的地址值
//#3
return __________;
//#4 返回 s 的平方根的值
}
void main()
{
cout<<fun(20)<<" ";
}
3、【简单操作题】文件素材的存取路径为 D:\SRC\4000419,打开 proj3.cpp,按照以下要求, 完成操作: 1)编写一函数 fun,函数 fun(char *str, char ch)的功能是:判断字符 ch 是否与字符串 str 中 的某个字符相同,若相同,则什么也不做,若不同,则插在字符串的最后; 2)请将程序补充完整,但不要改变已有的程序,使程序能正确运行,保存文件。在编写程 序时,不得使用 C++语言提供的字符串函数。(20 分) #include <iostream.h> #include <string.h> void fun(char *str, char ch) {
A、continue 语句只应用于循环体中
B、break 和 continue 的跳转范围不够明确,容易产生问题
C、break 语句只应用于循环语句中
D、break 是无条件跳转语句,continue 不是
二、操作题 1. 【简单操作题】文件素材的存取路径为 D:\SRC\4000417,打开 proj1.cpp,按照以下要求, 完成操作: 1)编写程序,求 1+1/(1+2)+1/(1+2+3)+……+1/(1+2+3+……+m)的值,其中 m 的值由键盘输 入(提示:当 M 小于 1 时,输出值为 0); 2)请按照注释的要求在程序的“_____”部分填下适当的内容并去掉程序中的“_____”,使 程序能正确运行,保存文件。(15 分) #include <iostream.h> void main() {
相关文档
最新文档