c++语言程序中,要调用的函数必须在main()函数中定义,函数---习题

一:选择题

1. 下列叙述中正确的是:

a. C++语言程序必须要有return语句

b. C++语言程序中,要调用的函数必须在main()函数中定义

c.

C++语言程序中,只有int类型的函数可以未经声明而出现在调用之后

d. C++语言程序中,main()函数必须放在程序开始的部分

2. 下列叙述中正确的是:

a. C++语言程序总是从第一个定义的函数开始执行

b. C++语言程序中,函数类型必须进行显式声明

c. C++语言程序中,return语句必须放在函数的最后

d.

C++语言程序中,return语句中表达式的类型应该与函数的类型一致

3. 下列叙述中正确的是:

a. C++语言程序中,main()函数必须在其它函数之前,函数内可以嵌套定义函数

b.

C++语言程序中,main()函数的位置没有限制,函数内不可以嵌套定义函数

c. C++语言程序中,main()函数必须在其它函数之前,函数内不可以嵌套定义函数

d. C++语言程序中,main()函数必须在其它函数之后,函数内可以嵌套定义函数

4. 一个C++语言程序总是从_______开始执行:

a. 主程序

b. 子程序

c. 主函数

d. 第一个函数

5.已知函数test定义为:

void test()

{

…………

}

则函数定义中void的含义是:

a.

执行函数test后,函数没有返回值

b. 执行函数test后,函数不再返回

c. 执行函数test后,函数返回任意类型值

d. 以上三个答案都是错误的

6.以下对于C++语言的描述中,正确的是:

a.C++语言中调用函数时,值传递方式只能将实参的值传递给形参,形参的值不能传递给实参

b.C++语言中函数既可以嵌套定义,也可以递归调用

c.函数必须有返回值

d.C++程序中有调用关系的所有函数必须放在同一源程序文件中

7. C++语言中函数返回值的类型是由______决定的?

a.return语句中的表达式类型

b.调用该函数的主调函数类型

c.定义函数时所指定的函数类型

d.以上说法都不正确

8.在一个源文件中定义的全局变量的作用域为:

a.本程序的全部范围

b.本函数的全部范围

c.从定义该变量的位置开始到本文件结束

d.以上说法都不正确

9. 以下说法错误的是:

a.全局变量就是在函数外定义的变量,因此又叫做外部变量

b.一个函数中既可以使用本函数中的局部变量,也可以使用全局变量

c.局部变量的定义和全局变量的定义的含义不同

d.如果在同一个源文件中,全局变量和局部变量同名,则在局部变量的作用范围内,全局变量通常不起作用

10. 当一个函数无返回值时,定义它的函数类型应是___。

a.void b.int

c.任意

d.无

二:编程及简答题

1. 下面的程序共有17行,程序中变量num、i、temp、对象cout和函数func()的作用域范围分别是什么?

1、#include

2、int num;

3、void func();

4、void main()

5、{

6、 char name[20];

7、 int i;

8、 for(i=0;i<20;i++)

9、 {

10、 char temp;

11、 temp=name[i];

12、 cout<

13、 }

14、}

15、void func()

16、{

17、 cout<

18、}

2.用递归函数完成以下运算:

sum(n)=1+2+3+…+n

函数的原型如下:

int sum(int n);

该函数完成1+2+3+…n的运算,并返回运算结果,其中n>0

3.阅读下面的程序,回答问题:

//file1.cpp

static int i = 20;

int x;

static int g(int p)

{

return i + p;

}

void f(int v)

{

x = g(v);

}

//file2.cpp

#include

extern int x;

void f(int);

void main()

{

int i = 5;

f(i);

cout << x;

}

回答以下问题:

(1)、 程序的运行结果是什么样的?

(2)、为什么文件file2.cpp中要包含头文件?

(3)、 在函数main()中是否可以直接调用函数g(),为什么?

(4)、 如果把文件file1.cpp中的两个函数定义的位置换一下,程序是否正确,为什么?

(5)、 文件file1.cpp和file2.cpp中的变量i的作用域分别是怎样的?在程序中直接标出两个变量各自的作用域

4.给出下列程序中的输出结果。

(1) #include

int add(int a,int b);

void main()

{

extern int x,y;

cout<

}

int x=20,y=5;

int add(int a,int b)

{

int s=a+b;

return s;

}

(2) #include

void fn(int n)

{

int x=5;

static int y=10;

if(n>0)

{

++x;

++y;

cout<

}

}

void main()

{

int m=1;

fn(m);

}

(3)分析如下程序输出结果:

#include "iostream.h"

fun(int a,int b,int c)

{

c=a*b;

}

void main()

{

int c;

fun(2,3,c);

cout<

}

(4). 分析如下程序输出结果:

#include "iostream.h"

void outputab(int a,int b)

{

cout<

"<

b=

"<

a=100;

b=200;

}

void main()

{

int a=300;

int b=400;

outputab(a,b);

cout<

"<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值