预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共58页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第2章 【2.3】测试下面的注释(它在C++风格的单行注释中套入了类似于C的注释)是否有效。 //thisisastrange/*waytodoacomment*/ 答:此注释有效,单行注释中可以嵌套/*……*/方式的注释。 【2.4】以下这个简短的C++程序不可能编译通过,为什么? #include<iostream> usingnamespacestd; sum(inta,intb) intmain() {inta,b,c; cout<<"Entertwonumbers:"; cin>>a>>b; c=sum(a,b); cout<<"sumis:"<<c; return0; } sum(inta,intb) {returna+b; } 答:不可能通过编译.在usingnamespacestd;后面加上sum(inta,intb) 就可以通过。 【2.5】回答问题。 (1)以下两个函数原型是否等价: floatfun(inta,floatb,char*c); floatfun(int,float,char*); (2)以下两个函数的第一行是否等价: floatfun(inta,floatb,char*c); floatfun(int,float,char*); 答:(1)这两个函数原型是等价的,函数原型中的参数名可以缺省。 (2)这两个函数的第1行是不等价的,因为这个函数的第1行中必须包含参数名。 【2.6】下列语句中错误的是(D)。 A.int*p=newint(10);B.int*p=newint[10]; C.int*p=newint;D.int*p=newint[40](0); 【2.7】假设已经有定义“constchar*constname="chen";”下面的语句中正确的是(D)。 A.name[3]='a';B.name="lin"; C.name=newchar[5];D.cout<<name[3]; 【2.8】假设已经有定义“char*constname="chen";”下面的语句中正确的是(A)。 A.name[3]='q';B.name="lin"; C.name=newchar[5];D.name=newchar('q'); 【2.9】假设已经有定义“constchar*name="chen";”下面的语句中错误的是(A)。 A.name[3]='q';B.name="lin"; C.name=newchar[5];D.name=newchar('q'); 【2.10】重载函数在调用时选择的依据中,(B)是错误的。 A.函数名字B.函数的返回类型 C.参数个数D.参数的类型 【2.11】在(A)情况下适宜采用内联函数。 A.函数代码小,频繁调用B.函数代码多,频繁调用 C.函数体含有递归语句D.函数体含有循环语句 【2.12】下列描述中,(C)是错误的。 A.内联函数主要解决程序的运行效率问题 B.内联函数的定义必须出现在内联函数第一次被调用之前 C.内联函数中可以包括各种语句 D.对内联函数不可以进行异常接口声明 【2.13】在C++中,关于下列设置默认参数值的描述中,(B)是正确的。 A.不允许设置默认参数值 B.在指定了默认值的参数右边,不能出现没有指定默认值的参数 C.只能在函数的定义性声明中指定参数的默认值 D.设置默认参数值时,必须全部都设置 【2.14】下面的类型声明中正确是(D)。 A.int&a[4];B.int&*p; C.int&&q;D.inti,*p=&i; 【2.15】下面有关重载函数的说法中正确的是(C)。 A.重载函数必须具有不同的返回值类型 B.重载函数形参个数必须不同 C.重载函数必须有不同的形参列表 D.重载函数名可以不同 【2.16】关于new运算符的下列描述中,(D)是错误的。 A,它可以用来动态创建对象和对象数组 B.使用它创建的对象或对象数组可以使用运算符delete删除 C.使用它创建对象时要调用构造函数 D.使用它创建对象数组时必须指定初始值 【2.17】关于delete运算符的下列描述中,(C)是错误的。 A.它必须用于new返回的指针 B.使用它删除对象时要调用析构函数 C.对一个指针可以使用多次该运算符 D.指针名前只有一对方括号符号,不管所删除数组的维数 【2.18】写出下列程序的运行结果。 #include<iostream> usingnamespacestd; inti=15; intmain() {inti; i=100; ::i=i+1; cout<<::i<<endl; return0; } 答:101 【2.19】写出下列程序的运行结果。 #include<iostream> usingnamespacestd; voi