选择题: 1在函数声明中,是不必要的。 A)函数名 B)函数类型 C)函数体 D)参数类型 2下列描述错误的是B A)函数返回值类型决定返回表达式类型。 B)返回表达式类型决定函数返回值的类型。 C)函数返回值类型与返回表达式的类型可以不同。 D)函数返回值类型由函数类型定义,返回表达式类型由 return语句后面的表达式定义 3C++中若对函数类型没有显式说明,函数的隐含类型是A A)void B)char C)double D)float C++程序设计课件设计制作:徐龙琴
C++程序设计课件 设计制作:徐龙琴 1 1 在函数声明中, 是不必要的。 A)函数名 B)函数类型 C)函数体 D)参数类型 2 下列描述错误的是 A)函数返回值类型决定返回表达式类型。 B) 返回表达式类型决定函数返回值的类型。 C) 函数返回值类型与返回表达式的类型可以不同。 D) 函数返回值类型由函数类型定义,返回表达式类型由 return语句后面的表达式定义。 3 C++中若对函数类型没有显式说明,函数的隐含类型是 A)void B)char C)double D)float C B 一、选择题: A
4.用函数重载的目的是D A)实现共享 B)减少空间 C)提高速度 D)增加可读性 5下列有关设置函数参数默认值的描述中正确的是A A)设置了默认的参数右边不允许出现没有指定默认值的参数 B)参数默认的设置顺序从参数表的左端开始 C)参数默认值要设置在定义语句中,不能设置在说明语句中 D)参数默认值可以是数值也可以是表达式 C++程序设计课件设计制作:徐龙琴
C++程序设计课件 设计制作:徐龙琴 2 4.采用函数重载的目的是 A)实现共享 B)减少空间 C)提高速度 D)增加可读性 5.下列有关设置函数参数默认值的描述中正确的是 A) 设置了默认的参数右边不允许出现没有指定默认值的参数 B) 参数默认的设置顺序从参数表的左端开始 C) 参数默认值要设置在定义语句中,不能设置在说明语句中 D) 参数默认值可以是数值也可以是表达式 D A
6下列哪个不是重载函数在调用时选择的依据:D A)参数类型B)参数个数 C)函数类型D)函数名 7在参数传递过程中,对形参和实参的要求是:B A)函数定义时,形参一直占用存储空间 B)实参可以是常量、变量或表达式 C)形参可以是常量、变量或表达式 D)形参和实参类型和个数都可以不同。 8对于一个功能不太复杂,并且要求加快执行速度,选用:A A)内联函数B)重载函数 C)递归调用D)嵌套调用 C++程序设计课件设计制作:徐龙琴 3
C++程序设计课件 设计制作:徐龙琴 3 6.下列哪个不是重载函数在调用时选择的依据: A)参数类型 B)参数个数 C)函数类型 D)函数名 7.在参数传递过程中,对形参和实参的要求是: A)函数定义时,形参一直占用存储空间。 B)实参可以是常量、变量或表达式。 C)形参可以是常量、变量或表达式。 D)形参和实参类型和个数都可以不同。 8.对于一个功能不太复杂,并且要求加快执行速度,选用: A)内联函数 B)重载函数 C)递归调用 D)嵌套调用 D B A
二分析下列程序的输出结果 #include int add(int x, int y=8); void main() Rint a=4; cout<<add(a)<<endl; cout<<add(a, add(a)<<endl; 输出结果为: int add(int x, int y) 12 i return x+y; 16 C++程序设计课件设计制作:徐龙琴
C++程序设计课件 设计制作:徐龙琴 4 二 分析下列程序的输出结果 #include int add(int x,int y=8); void main( ) {int a=4; cout<<add(a)<<endl; cout<<add(a,add(a))<<endl; } int add(int x,int y) { return x+y; } 输出结果为: 12 ⒈ 16
2. #include void fun(; int n=5: void main() Rint n=10; cout<<n<<endl funo 输出结果为: 10 void fun( 5 i cout<<n<<endl; C++程序设计课件设计制作:徐龙琴
C++程序设计课件 设计制作:徐龙琴 5 #include void fun( ); int n=5; void main( ) {int n=10; cout<<n<<endl; fun(); } void fun( ) { cout<<n<<endl; } 输出结果为: 10 ⒉ 5
3. #include void fun(; void main() for(i=0;i<5;i++) fun( 输出结果为: void fun( 0 i static int m=0; cout<<m++<<endl 234 C++程序设计课件设计制作:徐龙琴
C++程序设计课件 设计制作:徐龙琴 6 #include void fun( ); void main( ) {int i; for(i=0;i<5;i++) fun( ); } void fun( ) { static int m=0; cout<<m++<<endl; } 输出结果为: 0 ⒊ 1 2 3 4
#include #define m 20 #definen 1o #define(rrr void main() 输出结果为: cout<<L(M)<<endl 400 cout<<L(N+N<<endl; 120 C++程序设计课件设计制作:徐龙琴 7
C++程序设计课件 设计制作:徐龙琴 7 #include #define M 20 #define N 10 #define L(r) r*r void main( ) { cout<<L(M)<<endl; cout<<L(N+N)<<endl; } 输出结果为: 400 ⒋ 120
5 #include void swap(int, int) void maino f int a=2, b swap(a, b) cout<< a=k<<a<<b=w<<k<<endl void swap(int x, int y) 输出结果为: i int t; a=2,b=5 C++程序设计课件设计制作:徐龙琴 8
C++程序设计课件 设计制作:徐龙琴 8 #include void swap(int,int); void main() { int a=2,b=5; swap(a,b); cout<<"a="<<a<<",b="<<b<<endl; } void swap(int x,int y) { int t; t=x;x=y;y=t; } 输出结果为: a=2,b=5 ⒌
include y? int max(int x, int y,int z fint tl, t2 -maxX,y) 2=max(y,Z 运行结果为: return max(t1, t2); 3 double max(double x, double y) max(3,4)=4 Breturn x double max double x, double y, double z) max(3,4,5)=5 fdouble t1, t 2: max(32,4.3)=4.3 tl=max max(32,4.3,5.4)=54 max return max(t1, t2); h C++程序设计课件设计制作:徐龙琴
C++程序设计课件 设计制作:徐龙琴 9 #include int max(int,int); int max(int,int,int); double max(double,double); double max(double,double,double); void main() {couty?x:y;} int max(int x,int y,int z) {int t1,t2; t1=max(x,y); t2=max(y,z); return max(t1,t2);} double max(double x,double y) {return x>y?x:y;} double max(double x,double y,double z) {double t1,t2; t1=max(x,y); t2=max(y,z); return max(t1,t2);} 运行结果为: max(3,4)=4 max(3,4,5)=5 max(3.2,4.3)=4.3 max(3.2,4.3,5.4)=5.4
7 #include double a=2.72; void maino 运行结果为 5 int a=5: 2.72 cout<<a<<endl: cout<<::a<<endl: C++程序设计课件设计制作:徐龙琴 10
C++程序设计课件 设计制作:徐龙琴 10 运行结果为: 5 2.72 #include double a=2.72; void main() { int a=5; cout<<a<<endl; cout<<::a<<endl; } ⒎