12、下列程序的输出结果是______。
#include<iostream>
using namespace std;
int main()
{
int a=2,b=-1,c=2;
if(a<b)
if(b<0)c=0;
else
c+=1;
cout<<c<<endl;
return 0;
}
A、0
B、1
C、2
D、3
本题考查的是if--else结构。
为了解决if--else结构中可能出现的二义性,C++中规定关键字是与它前面最近的未配对的且可见的那个if关键字配对。所以本题的else是和第二个if配对的。而本题第一个if中的条件就不成立,故最后输出c原来的数值。
故本题选C。
13、要将一个函数声明为内联函数必须在其前面加上______。
A、void
B、include
C、inline
D、virtual
本题考查内联函数的定义。
在C++中使用inline关键字来定义内联函数。inline关键字放在函数定义中函数类型之前。
所以本题选C。
14、下列各种函数中,______不是类的成员函数。
A、构造函数
B、析构函数
C、友元函数
D、拷贝构造函数
本题考查的是类的基本概念。
类由数据成员和成员函数组成。友元函数是外界函数。
故本题选C。
15、对于下列函数,调用语句错误的是____。
void show(int id=10,char *name="hello")
{
cout<<name<<": "<<id<<endl;
}
A、show(5);
B、show();
C、show(5,"abc");
D、show;
本题考查的是函数的调用。
当调用一个函数时,其实参的个数、类型及排列次序必须与函数定义时的形参一致。如果没有定义形参或者形参都给了默认值,则调用时可以省略实参,但是括号不能够省略。
故本题选D。
16、当使用ofstream流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为_____。
A、ios::in
B、ios::binary
C、ios::in|ios::out
D、ios::out
本题考查输入输出流对象。
当使用ofstream流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为ios::out。
故本题选D。