- 14
- 0
- 约3.57万字
- 约 61页
- 2016-10-18 发布于广东
- 举报
浙大2013年学期面向对象离线离线作业
浙江大学远程教育学院
《面向对象程序设计》课程作业
姓名: 学 号: 年级: 2013(春)计算机科学与技术(专本(业余)) 学习中心: 南京学习中心 —————————————————————————————
第2章
【2.3】 测试下面的注释(它在C++风格的单行注释中套入了类似于C的注释)是否有效。
//this is a strange /*way to do a comment*/
答:此注释有效,单行注释中可以嵌套 / * ?? * /方式的注释。
【2.4】 以下这个简短的C++程序不可能编译通过,为什么?
#includeiostream
using namespace std;
int main()
{int a,b,c;
coutEnter two numbers:;
cinab;
c=sum(a,b);
coutsum is:c;
return 0;
}
sum(int a,int b)
{ return a+b;
}
答:不可能通过编译.在using namespace std;后面加上sum(int a,int b)
【2.5】 回答问题。
(1) 以下两个函数原型是否等价:
float fun(int a,float b,char *c);
float fun(int,float,char * );
(2) 以下两个函数的第一行是否等价:
float fun(int a,float b,char * c);
float fun(int,float,char * );
答:(1)这两个函数原型是等价的,函数原型中的参数名可以缺省。 (2)这两个函数的第1行是不等价的,因为这个函数的第1行中必须包含参数名。
【2.6】 下列语句中错误的是( D )。
A.int *p=new int(10) B.int *p=new int[10];
C.int *p=new int; D.int *p=new int[40](0);
【2.7】 假设已经有定义“const char * const name=chen;”下面的语句中正确的是( D )。
A. name[3]=a; B. name=lin;
C. name=new char[5]; D. coutname[3];
【2.8】 假设已经有定义“char * const name=chen;”下面的语句中正确的是( A )。
A. name[3]=q; B. name=lin;
C. name=new char[5]; D. name=new char(q);
【2.9】 假设已经有定义“const char * name=chen;”下面的语句中错误的是( A )。
A. name[3]=q; B. name=lin;
C. name=new char[5]; D. name=new char(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. int i,*p=i;
【2
原创力文档

文档评论(0)