5. 假定一个参数说明为const char *p,则在函数体
中______(能够/不能够)改变p所指向的存储空间的内容,但______改变p指针的内容。 6. 假定一个参数说明为int &x,则进行函数调用时,
它是对应______的别名。
7. 一个函数带有函数声明时,则参数的默认值应该
在______(函数定义/函数声明)中给出。
8. 在进行函数调用时,将把______传送给非引用参
数,把实参的______传送给引用参数。
9. 函数执行中对引用参数的访问实际上就是对相
应______的访问。
10. 当函数的返回类型为void 时,在函数体中可以
使用______语句,否则必须使用______语句返回一个值。
11. 当实参为一个数组名时,对应的形参必须是
______类型或______类型。
12. 变量的四种作用域分别为______、______、______
和______。
13. 不同作用域范围内的变量______(能够/不能够)
同名。
14. 当一个函数的非引用参数为a,假定它对应的实
参也为a,则在函数体中对a的访问与对应的实参a______(有关/无关)。
15. 当一个函数的引用参数为a,假定它对应的实参
也为a,则在函数体中对a的访问与对应的实参a______(有关/无关)。这两个变量的作用域______(相同/不同)。
16. 当一个函数的引用参数为a,假定它对应的实参为
b,则它们对应的作用域______(相同/不同),访问它们的存储空间______(相同/不同)。
17. 在函数定义的第一层复合语句内______(能够/
不能够)定义与形参同名的变量,因为它们作用域______(相同/不同)。
18. 函数的形参和函数体内的变量______(可以/不可
以)与全局域或文件域的对象同名。
19. 在两个嵌套的不同作用域内若分别定义有同名对
象,当在内层作用域访问这个对象时,将访问的是在______(内层/外层)定义的对象,除此之外将访问的是在______(内层/外层)定义的对象。 20. 在一个程序文件中定义的函数,若要在另一个程
序文件中访问,则必须在该文件开始给出一条该函数的______对其进行说明。
21. 在一个函数体中可以使用函数调用表达式调用其
他函数,也可以调用______。
22. 在函数体中又调用自身函数称为______调用,该
函数称为______函数。
17
23. 当两个函数的函数名______,但参数的个数或对
应参数的类型______时,则称为重载函数。
24. 当一个函数为void f(int ,char=’a’),另一个
函数为void f(int),则它们______(是/不是)重载函数,在一个程序中______(可以/不可以)同时定义这两个函数。
25. 一个函数模板中的类型参数所对应的具体类型由
调用该函数模板的______决定。
26. 当在同一个程序中存在一个普通函数是一个函数
模板的重载函数时,则与函数调用表达式相符合的______将被优先调用执行。
27. 当一个函数调用表达式只能与一个函数模板相符
合时,将首先根据函数模板生成一个______,然后再调用它执行。
28. 在函数定义的参数表中,也可以使用函数参数,
假定一个函数参数说明为int &ff(int[],int),则等价的函数指针说明为______。
二、给出下列程序运行后的输出结果并上机验证 1. #include
void main() {
int a=10,b=20;
cout< int b=a+35; cout< cout< 2. #include int a=5; void main() { int a=10,b=20; cout< for(int i=1;i<6;i++) { a+=i;b+=a; } cout<
相关推荐: