(1)下面是重载为非成员函数的运算符的函数原型,其中错误的是( )。
A)Fraction operator+(Fraction,Fraction);
B)Fraction operator一(Fraction);
C)Fraction&operator=(Fraction&,Fraction);
D)Fraction&operator+=(Fraction&,Fraction);
答案:C
(2)有如下程序:
int x=3:
do{
x-=2;
COU[<<X:< p>
}while(!(--X));
执行这个程序的输出结果是( )。
A)1
B)3 0
C)1—2
D)死循环
答案:C
(3)有如下程序:
﹟nclude
using namespace std;
int main()
{
int*P;
*P=9:
cout<<”The value at p:”<< *p;
return 0;
}
编译运行程序将出现的情况是( )。
A)编译时出现语法错误,不能生成可执行文件
B)运行时一定输出:l'lle value at P:9
C)运行时一定输出:llle value at P:*9
D)运行时有可能出错
答案:D
(4)if语句的语法格式可描述为:
格式l:if(<条件>)<语句>
或
格式2:if(<条件>)<语句l>
else<语句2>
关于上面的语法格式,下列表述中错误的是( )。
A)<条件>部分可以是一个if语句,例如if(if(a==0)…)…
B)<语句>部分可以是一个if语句,例如if(…)if(…)…
C)如果在<条件>前加上逻辑非运算符!并交换<语句l>和<语句2>的位置,语句功能不变
D)<语句>部分可以是一个循环语句,例如if(…)while(…)…
答案:A
(5)下列符号中,正确的c++标识符是( )。
A)enum
B)2b
C)f00一9
D)_32
答案:D
(6)下列关于c++函数的说明中,正确的是( )。
A)内联函数就是定义在另一个函数体内部的函数
B)函数体的最后一条语句必须是return语句
C)标准c++要求在调用一个函数之前,必须先声明其原型
D)编译器会根据函数的返回值类型和参数表来区分函数的不同重载形式
答案:C
(7)运算符重载是对已有的运算符赋予多重含义,因此( )。
A)可以对基本类型(如int类型)的数据,重新定义“+”运算符的含义
B)可以改变一个已有运算符的优先级和操作数个数
C)只能重载c++中已经有的运算符,不能定义新运算符
D)C++中已经有的所有运算符都可以重载
答案:C
(8)下列有关内联函数的叙述中,正确的是( )。
A)内联函数在调用时发生控制转移
B)内联函数必须通过关键字inline来定义
C)内联函数是通过编译器来实现的
D)内联函数函数体的最后一条语句必须是return语句
答案:C
(9)下列运算符不能重载为友元函数的是( )。
A)=()( )->
B) + - ++ --
C)> < >= <=
D)+= -= *=/=
答案:A
(10)有如下程序:
#include
using namespaee std;
int main()
{
void function(double val);
double val:
function(val);
eout<<VAL:< p>
return 0;
}
void function(double val)
{
val=3;
}
编译运行这个程序将出现的情况是( )。
A)编译出错,无法运行
B)输出:3
C)输出:3.0
D)输出一个不确定的数
答案:D
点击加载更多评论>>