void main() {
float x,y; char ch;
cout<<\请输入两个操作数:\ cin>>x>>y;
cout<<\请输入运算符 + - * /: \ cin>>ch; switch(ch) { case '+':cout< (8)#include void main() { for(int i=0;i<5;i++) { for(int j=0;j<2*i+1;j++) cout<<\ cout< 第3章 函数 1.填空题 (1)在C++中,一个函数一般由两部分组成,分别是_____________和___________。 (2)在C++中,若没有定义函数的返回类型,则系统默认为_____________型。 (3)当一个函数没有返回值时,函数的类型应定义为___________。 (4)在C++中,函数的参数传递可有三种形式,即___________、___________和___________。 (5)在函数体外定义的变量是__________变量;在函数体内定义的变量是__________变量。 (6)在C++的一个程序内可以定义多个同名的函数,称为__________。 (7)在一个函数的定义或声明前加上关键字__________,该函数就声明为内联函数。 (8)若在一个函数中又调用另一个函数,则称这样的调用过程为函数的_________调用。 (9)在调用一个函数的过程中出现直接或间接调用该函数本身,就称作函数的________调用。 (10)在程序中可以使用系统函数,但是要在程序的_________说明函数所在的头文件名。 (11)以下程序的输出结果为________________。 #include for(int i=1;i void fun(int x ) { int a=0,b=2; cout<<(a+=x+3,a+b)< (12)以下程序的输出结果为________________。 #include for(int i=1;i void fun( ) { int b=2; cout<<(a+=3,a+b)< (13)以下程序的输出结果为________________。 #include void fun(int m) { m=6; } void main() { fun(m); cout<<\} (14)以下程序的输出结果为________________。 #include int a,b; a=16;b=24; cout<< “GCD(“< int gcd(int a,int b) { if(b==0)return a; else return gcd(b,a%b); } 参考答案: (1)函数头,函数体 (2)int (3)void (4)传值调用,传址调用,引用调用 (5)全局变量,局部变量 (6)函数重载 (7)inline (8)嵌套 (9)递归 (10)开始处 (11)6 7 8 9 10 11 12 (12)5 8 11 14 (13)m=3 (14)GCD<16,24>=8 2.选择题 1)以下叙述不正确的是( )。 A. 函数是构成C++程序的基本元素 B. 程序总是从第一个定义的函数开始执行 C. 主函数是C++程序中不可缺少的函数 D. 在函数调用之前,必须要进行函数的定义或声明 2)以下函数声明正确的是( )。 A. double fun(int x,int y) B. double fun(int x;int y) C. double fun(int x,int y); D. double fun(int x, y); 3)当一个函数无返回值时,函数的类型应为( )。 A. 任意 B. void C. int D. char 4)下列关于函数声明说法不正确的是( )。 void fun(void); A. 函数声明是一条独立的语句,必须以分号结尾 B. 函数声明通常放在程序的开始部分 C. 函数fun无参数传入 D. 函数fun返回一个值,其类型为void 5)下列关于return语句的说法错误的是( )。 A. 在函数中通过return语句返回一个函数值 B. return语句中表达式的类型决定函数返回的类型 C. 在无返回值的函数体中可以没有return语句 D. 当函数返回值的类型为void时,函数中不应出现return(表达式)6)下列关于重载函数的说法正确的是( )。 A. 重载函数必须具有不同的返回值类型 B. 重载函数形参个数必须不同 C. 重载函数必须具有不同的形参列表 D. 重载函数名可以不同 7)一个函数为void f(int,float=?a?),另一个函数为void f(int),则它们( A. 不能在同一个程序中定义 B. 可以在同一个程序中定义并可重载 C. 可以在同一个程序中定义,但不可重载 D. 以上说法均不正确 8)下列函数定义中正确的是( )。 A. double fun(double x,y) B. double fun(double x, double y) { { double z; return x/y; 。((((( (( ) ( z=x/y; } return z; } C. double fun(double x,y) D. double fun(double x, double y) { { z=x/y; z=x/y; return z; return x/y; } } (9)下列关于默认参数值函数说法错误的是( )。 A. C++中,允许设置参数的默认值 B. 必须从参数表最右边的参数开始,设置参数的默认值 C. 在函数声明和函数定义中,默认参数的值必须相同 D. 函数调用时,带默认值的参数无实参输入时,使用默认值 (10)下列程序的输出结果为( )。 A. 10,20,30 B. 35,7,5 C. 35,20,10 D. 10,20,35 #include void main() { int a=10,b=20,c=30; c=fun(a,b,c); cout< (11)下列程序的输出结果为( )。 A. 0 B. 4 C. 15 D. 60 #include void main() { int a=3,b=5,c=4,x=0; x=fun(fun(a,b),c); cout<