28.以下对C++语言函数的有关描述中,正确的是( )
A.在C++语言中调用函数,只能把实参的值传给形参,形参的值不能传送给实参
B.C++语言函数既可以嵌套定义又可以递归调用
C.函数必须无返回值,否则不能使用函数
D.函数必须有返回值,返回值类型不定
【参考答案】 A
29.拷贝构造函数的参数一般是( )
A.某对象名
B.某对象成员名
C.某对象的引用名
D.指向对象的指针名
【参考答案】 C
30.下面这个程序的结果是( )
#include
class A
{ private:
int a;
public:
void seta();int geta();};
void A::seta()
{ a=1;}
int A::gate()
{ return a;}
class B
{ private:
int a;
public:
void seta();int geta();};
void B::seta()
{a=2;}
int B::geta()
{return a;}
class C:public A,public B
{ private:
int b;
public:
void display();};
void C::display()
{ int b=geta();
cout<
void main()
C c;
C.seta();
C.display();}
A.1
B.2
C.随机输出1或2
D.程序有错
【参考答案】 D
31.对于模板定义关键字class和typename说法不正确的是( )
A.程序中的class并不能都替换为typename
B.class和typename都可互相替换
C.程序中的typename都能替换为class
D.程序中的部分class可以替换为typename
【参考答案】 B
32.以下程序的输出结果是( )
#include
long fun(int n)
{ long s;
if(n==1||n==2)s=2;
else s=n-fun(n-1);
return s; }
void main()
{ cout<
A.1
B.2
C.3
D.4
【参考答案】 A
33.有如下程序
#include
void main()
{ char ch[2][5]={″6937″,″8254″},*p[2];
int i,j,s=0;
for(i=0;i<2;i++)p[i]=ch[i];
for(i=0;i<2;i++)
for(j=0;p[i][j]>′\0′;j+=2)
s=10*s+p[i][j]-′0′;
cout<
该程序的输出结果是( )
A.69825
B.63825
C.6385
D.693825
【参考答案】 C
34.以下程序的输出结果是( )
#include
void main()
{ char x=040;
cout<<(x<<1);}
A.100
B.80
C.64
D.32
【参考答案】 C
35.对以下说明语句的正确理解是( )
int a[10]={6,7,8,9,10};
A.将5个初值依次赋给a[1]至a[5]
B.将5个初值依次赋给a[0]至a[4]
C.将5个初值依次赋给a[6]至a[10]
D.因为数组长度与初值的个数不相同,所以此语句不正确
【参考答案】 B
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |