2024年4月28日发(作者:)
面向对象C++选择题
1.若定义:string str; 当语句cin>>str; 执行时,从键盘输入:
Microsoft Visual Studio 6.0!所
得的结果是str=()。
A. Microsoft Visual Studio 6.0!
B. Microsoft
C. Microsoft Visual
D. Microsoft Visual Studio 6.0
答案:B
解析:cin在接收字符串时,会将遇到的空格符、回车符、Tab符
时,都判断为字符串结束。若要输入带空格的字符串,可使用getline
()函数。
2.使用地址作为实参传给形参,下列说法正确的是()
A. 实参是形参的备份
B. 实参与形参无联系
C. 形参是实参的备份
D. 实参与形参指向同一对象
答案:D
解析:地址作为实参,表示实参与形参指向同一个对象,所以选
择D项。
3.下列程序的输出结果是()
#include
void main()
{int n[][3]={10,20,30,40,50,60};
int (*p)[3];
p=n;
cout<
<
A. 10,30,50
B. 10,20,30
C. 20,40,60
D. 10,30,60
答案:B
解析:如果数组元素都是相同类型的指针,则称这个数组为指针
数组。指针数组一般用于处理二
维数组。声明的格式为:<数据类型><(*变量名)><[元素个
数]>。
p表示指向数组n的行指针。如果将指针的初始化(*p)[3]=b;地
址的等价形式:
p+i p[i]*(p+i)都表示b数组第i+1行的第1个元素的首地址。
*(p+i)+jp[i]+j &p[i][j]都表示b数组第i+1行、第j+1
列元素的地址。
值的等价形式:
*(*(p+i)+j) *(p[i]+j) p[i][j]都表示b数组第i+1、第j+1
列元素的值。
所以题目分别访问p[0][0],p[0][1],p[0][2]。
4.在C++中,函数原型不能标识()
A. 函数的返回类型
B. 函数参数的个数
C. 函数参数类型
D. 函数的功能
答案:D
解析:函数的声明,说明函数的参数、返回类型以及函数名,函
数体即实现部分决定功能。所以
函数的原型不能决定函数的功能。
5.下列有关重载函数的说法中正确的是()
A. 重载函数必须具有不同的返回值类型
B. 重载函数参数个数必须相同
C. 重载函数必须有不同的形参列表
发布评论