以下定义函数的方式错误的是( )① int add(int x, int y = 5, int z = 6);
② int add(int x = 1, int y = 5, int z);
③ int add(int x = 1, int y, int z = 6);
A: ①和②
B: ②和③
C: ①和③
D: ①, ②和③
② int add(int x = 1, int y = 5, int z);
③ int add(int x = 1, int y, int z = 6);
A: ①和②
B: ②和③
C: ①和③
D: ①, ②和③
举一反三
- 以下设置默认值的函数原型声明中错误的是 。 A: int add(int x , int y = 4 , int z ); B: int add(int x = 3 , int y = 4 ,int z = 5 ); C: int add(int x , int y , int z = 5); D: int add(int x , int y = 4 , int z = 5);
- 下列各种形式的重载定义哪一种是正确的 A: int add(int x , int y); int add(int x , int y, int z); B: int add(int a , int b);int add(int x , int y); C: int add(int x , int y);void add(int y , int x); D: int add(int x,int y);void add(int a , int b);
- 以下正确的函数首部的定义形式是( )。 A: int add(int x,int y) ; B: int add(int x,int y) C: int add(int x;int y) D: int add(int x,y)
- 以下程序的运行结果是_____________ #include "stdio.h" void main() { void add(int x,int y, int z); int x=2,y=3,z=0; printf("(1)x=%d y=%d z=%d\n",x,y,z); add(x,y,z); printf("(3)x=%d y=%d z=%d\n",x,y,z); } void add(int x,int y, int z) { z=x+y; x=x*x; y=y*y; printf("(2)x=%d y=%d z=%d\n",x,y,z); }
- 下列函数定义不正确的是( )。 A: int<br/>max(){int x,y,z;z=x>y?x:y;} B: int max(x,y)int x,y;{ int z;z=x>y?x:y;return(z);} C: int max(x,y){int x,y,z;z=x>y?x:y;return(z);} D: int max(){ }