(西南交大)C++第6章习题参考答案

更新时间:2023-11-15 00:05:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

一、 判断题:

1、一个C++程序通常由有而且只能有一个的主函数、若干个子函数和库函数构成。(对) 2、用语句cout<

5、要在C++程序中通过引用来传递变量,则应该在函数头的对应形参名前面加上地址运算符&。(对)

6、在C++有返回值的函数中,return语句有而且只能有一条。(错)

7、void函数调用后,可以作为一个值出现在赋值语句的右边赋值给一个变量。(错) 8、变量的生存期指明了该变量在计算机内存中能保留多久。(对)

9、Visual C++6.0系统中,使用语句srand(time(NULL));来初始化随机数产生器。(对) 10、Visual C++6.0系统中,用户若需调用内置系统函数,调用前不必使用预编译命令将该函数所在文件包括到用户源文件中,系统会自动调用。(错)

11、Visual C++6.0系统中,有调用关系的所有函数必须放在同一源程序文件中。(错) 12、在C++中,实参与形参结合方式有三种:值调用、引用调用和地址调用。(对)

13、当数组名作为函数调用的实参时,参数的传递方式为地址传递,即实参与形参表示同一个数组。(对)

14、在c++的函数调用中,主函数可以调用子函数,子函数也可以调用其它的子函数,但子函数不能自己调用自己。(错)

15、void函数的函数头以关键字void开始,函数体中最后一条语句为return。(错) 16、只能被声明该变量的函数使用的那些变量被称为全局变量。(错) 17、变量的作用域指明了程序的哪一部分可以使用该变量。(对) 18、函数的形式参数可以都有默认值,也可以只有部分有默认值。(对) 19、函数的递归调用可分为直接递归调用和间接递归调用。(对)

20、同一源文件中,若外部变量名与局部变量名相同,则在执行该函数过程中,外部变量起作用。(错)

二、 单项选择题:

1、下面哪一个C++函数和数学表达式53是等价的 C 。

A) power(3,5) B) pow(3,5) C) pow(5,3) D) srqt(3,5)

2、下面哪一条C++语句显示范围3到9之间的随机数 B 。

A) 1+rand( )%(9-3+1) B) 3+rand( )%(9-3+1) C) 3+rand( )%(9+3-1) D) 9+rand( )%(9+1-3)

3、Visual C++中,函数返回值的类型是由 D 。

A) return 语句中的表达式类型所决定 B) 调用该函数时的主调函数类型所决定

C) 调用该函数时系统临时决定

D) 在定义该函数时所指定的函数类型所决定 4、以下叙述中正确的是 A 。

A)构成C++程序的基本单位是函数 B)可以在一个函数中定义另一个函数 C)主函数必须放在其他函数之前

D)所有被调用的函数一定要在调用之前进行定义 5、以下正确的函数头定义形式是 B 。

A)int fun(int x;int y) B)int fun(int x,int y) C)int fun(int x,y) D)int fun(int x;)

6、在下面的函数原型中,存在语法错误的是 D 。

A) void BC( int a ,int ); B) void BC( int ,int ); C) void BC( int ,int b=5); D) void BC( int a ;int b);

7、若有函数原型“int sum(int x, int y);”,则使用语句“cout<

实参变量a和形参变量x之间的数据传递方式为 C 。

A)地址传递

B)引用传递

C)值传递

D)内容传递

8、以下哪一项可以作为void函数cacl( )的函数原形,并且将传递给该函数两个int型变

量的值 A 。

A) void cacl(int, int); B) void cacl(int);

C) void cacl(int &, int &); D) int cacl(void);

9、以下说法中哪一项是错误的 A 。

A) 在函数头中形参的名字必须和函数调用中实参的名字一样 B) 在函数头中列出的形参必须包含每个参数的数据类型和名字 C) 在函数头中,函数名后面的一对空括号代表函数不接受任何信息 D) 函数的语句被括在一对花括号中

10、以下哪一条C++语句显示名为address字符串变量所包含的字符的个数 A 。

A) cout<

11、要求函数的功能是交换x和y中的值,且通过正确调用返回交换结果。能实现正确交换

功能的函数是 A 。

A)void funa(int &x,int &y) B) void funb(int x,int y) {int p; { int t;

p=x;x=y;y=p;} t=x;x=y;y=t;}

C)void func(int *x,int *y) D)void fund(int x,int y) {*x=*y;*y=*x;} {x=x+y; y=x-y; x=x-y; } 12、关于引用,下列说法中正确的是 A 。

A、引用是一种特殊类型的变量,是另一个变量的别名 B、引用在函数调用中传递的是变量的值 C、在声明引用时,要给它另开辟内存单元 D、在声明引用时,可以不进行初始化 13、下列叙述中正确的是 B 。

A、C++程序中,main( )函数必须在其它函数之前,函数内可以嵌套定义函数 B、C++程序中,main( )函数的位置没有限制,函数内不可以嵌套定义函数 C、C++程序中,main( )函数必须在其它函数之前,函数内不可以嵌套定义函数 D、C++程序中,main( )函数必须在其它函数之后,函数内可以嵌套定义函数 14、下面有关函数原型的说法正确的是 D 。

A、函数原型与函数的定义语法是一样的

B、如果程序中有自定义函数,必须有和其对应的函数原型

C、函数原型的参数和函数定义的参数列表在参数的个数、名称、类型上必须一一对应 D、函数原形和函数定义在函数名和返回类型上必须一致

15、在C++函数头定义中,若省略了返回值的数据类型,其默认的返回值的数据类型为

A 。

A) int B) float C)double D) void 16、下列程序运行后的结果是 B 。

A) 3 5 B) 5 5 C) 3 3 D) 5 3 #include using namespace std; void fun(int *a, int b) { int *k; k=a; *a=b; b=*k; }

void main( )

{ int a=3,*x=&a; int y=5; fun(x,y);

cout<

17、下列程序运行后的结果是 C 。

#include using namespace std; void fun(char *c,int d) { *c=*c+1;d=d+1; }

void main( ) { char a='A',b='a'; fun(&b,a); cout<

}

A)B a, B)a B C) A b D) b B 18、下列程序运行后的结果是 A 。 #include using namespace std;

void fun(char *a, char *b) { a=b; (*a)++; } void main( ) { char c1='A', c2='a', *p1, *p2; p1=&c1; p2=&c2; fun(p1,p2);

cout<

}

A) Ab B) aa C) Aa D) Bb 19、以下不正确的说法是 C 。

A、在C++中,一个程序中的函数名不一定是唯一的

B、在C++中,定义函数时,在返回值数据类型的前面加上关键字inline,这种函数称为内联函数

C、在C++中,不允许有两个及以上的函数使用同一个函数名

D、在定义函数时,还可以对形式参数进行初始化,即给该形式参数指定默认值。 20、以下正确的说法是 B 。

A、全局变量如果没有指定初值,则其初值为 0 B、静态变量如果没有指定初值,则其初值为 0 C、局部变量如果没有指定初值,则其初值为 0

D、函数中的静态变量在函数每次调用时,都会重新设置初值

本文来源:https://www.bwwdw.com/article/zwmv.html

Top