一、選擇題
(1)以下關(guān)于函數(shù)的敘述中正確的是_____。
A)每個函數(shù)都可以被其它函數(shù)調(diào)用(包括main函數(shù))
B)每個函數(shù)都可以被單獨編譯
C)每個函數(shù)都可以單獨運行
D)在一個函數(shù)內(nèi)部可以定義另一個函數(shù)
(2)設函數(shù)fun的定義形式為
void fun(char ch, float x ) { … }
則以下對函數(shù)fun的調(diào)用語句中,正確的是_____。
A)fun("abc",3.0); B)t=fun('D',16.5);
C)fun('65',2.8); D)fun(32,32);
(3)有以下程序
int f1(int x,int y){return x>y?x:y;}
int f2(int x,int y){return x>y?y:x;}
main()
{ int a=4,b=3,c=5,d=2,e,f,g;
e=f2(f1(a,b),f1(c,d));
f=f1(f2(a,b),f2(c,d));
g=a+b+c+d-e-f;
printf("%d,%d%d\n",e,f,g);
}
程序運行后的輸出結(jié)果是_____。
A)4,3,7
B)3,4,7
C)5,2,7
D)2,5,7
(4)有以下程序
#define P 3
#define F(int x) { return (P*x*x);}
main()
{
printf("%d\n",F(3+5));
}
程序運行后的輸出結(jié)果是_____。
A)192
B)29
C)25
D)編譯出錯
(5) 若程序中定義了以下函數(shù)
double myadd(double a,double B)
{ return (a+B) ;}
并將其放在調(diào)用語句之后,則在調(diào)用之前應該對該函數(shù)進行說明,以下選項中錯誤的說明是_____。
A) double myadd(double a,B) ;
B) double myadd(double,double);
C) double myadd(double b,double A) ;
D) double myadd(double x,double y);
(6) 有以下程序
char fun(char x , char y)
{ if(x return y;
}
main( )
{ int a=’9’,b=’8’,c=’7’;
printf(“%c\n”,fun(fun(a,B) ,fun(b,C) ));
}
程序的執(zhí)行結(jié)果是_____。
A) 函數(shù)調(diào)用出錯 B)8 C)9 D)7
(7) 有以下程序
void f(int v , int w)
{ int t;
t=v;v=w;w=t;
}
main( )
{ int x=1,y=3,z=2;
if(x>y) f(x,y);
else if(y>z) f(y,z);
else f(x,z);
printf(“%d,%d,%d\n”,x,y,z);
}
執(zhí)行后輸出結(jié)果是_____。
A) 1,2,3 B) 3,1,2 C) 1,3,2 D) 2,3,1
(8) 若已定義的函數(shù)有返回值,則以關(guān)于該函數(shù)調(diào)用的敘述中錯誤的是_____。
A) 調(diào)用可以作為獨立的語句存在 B) 調(diào)用可以作為一個函數(shù)的實參
C) 調(diào)用可以出現(xiàn)在表達式中 D) 調(diào)用可以作為一個函數(shù)的形參
(9) 有以下函數(shù)定義:
void fun( int n, double x) { …… }
若以下選項中的變量都已正確定義并賦值,則對函數(shù)fun的正確調(diào)用語句是_____。
A) fun(int y,double m); B) k=fun(10,12.5);
C) fun(x,n); D) vold fun(n,x);
(10) 有以下程序
fun(int a, int b)
{ if(a>b) return(a);
else return(b);
}
main()
{ int x=3, y=8, z=6, r;
r=fun (fun(x,y), 2*z);
printf("%d\n", r);
}
程序運行后的輸出結(jié)果是_____。
A) 3 B) 6 C) 8 D) 12
(1)以下關(guān)于函數(shù)的敘述中正確的是_____。
A)每個函數(shù)都可以被其它函數(shù)調(diào)用(包括main函數(shù))
B)每個函數(shù)都可以被單獨編譯
C)每個函數(shù)都可以單獨運行
D)在一個函數(shù)內(nèi)部可以定義另一個函數(shù)
(2)設函數(shù)fun的定義形式為
void fun(char ch, float x ) { … }
則以下對函數(shù)fun的調(diào)用語句中,正確的是_____。
A)fun("abc",3.0); B)t=fun('D',16.5);
C)fun('65',2.8); D)fun(32,32);
(3)有以下程序
int f1(int x,int y){return x>y?x:y;}
int f2(int x,int y){return x>y?y:x;}
main()
{ int a=4,b=3,c=5,d=2,e,f,g;
e=f2(f1(a,b),f1(c,d));
f=f1(f2(a,b),f2(c,d));
g=a+b+c+d-e-f;
printf("%d,%d%d\n",e,f,g);
}
程序運行后的輸出結(jié)果是_____。
A)4,3,7
B)3,4,7
C)5,2,7
D)2,5,7
(4)有以下程序
#define P 3
#define F(int x) { return (P*x*x);}
main()
{
printf("%d\n",F(3+5));
}
程序運行后的輸出結(jié)果是_____。
A)192
B)29
C)25
D)編譯出錯
(5) 若程序中定義了以下函數(shù)
double myadd(double a,double B)
{ return (a+B) ;}
并將其放在調(diào)用語句之后,則在調(diào)用之前應該對該函數(shù)進行說明,以下選項中錯誤的說明是_____。
A) double myadd(double a,B) ;
B) double myadd(double,double);
C) double myadd(double b,double A) ;
D) double myadd(double x,double y);
(6) 有以下程序
char fun(char x , char y)
{ if(x
}
main( )
{ int a=’9’,b=’8’,c=’7’;
printf(“%c\n”,fun(fun(a,B) ,fun(b,C) ));
}
程序的執(zhí)行結(jié)果是_____。
A) 函數(shù)調(diào)用出錯 B)8 C)9 D)7
(7) 有以下程序
void f(int v , int w)
{ int t;
t=v;v=w;w=t;
}
main( )
{ int x=1,y=3,z=2;
if(x>y) f(x,y);
else if(y>z) f(y,z);
else f(x,z);
printf(“%d,%d,%d\n”,x,y,z);
}
執(zhí)行后輸出結(jié)果是_____。
A) 1,2,3 B) 3,1,2 C) 1,3,2 D) 2,3,1
(8) 若已定義的函數(shù)有返回值,則以關(guān)于該函數(shù)調(diào)用的敘述中錯誤的是_____。
A) 調(diào)用可以作為獨立的語句存在 B) 調(diào)用可以作為一個函數(shù)的實參
C) 調(diào)用可以出現(xiàn)在表達式中 D) 調(diào)用可以作為一個函數(shù)的形參
(9) 有以下函數(shù)定義:
void fun( int n, double x) { …… }
若以下選項中的變量都已正確定義并賦值,則對函數(shù)fun的正確調(diào)用語句是_____。
A) fun(int y,double m); B) k=fun(10,12.5);
C) fun(x,n); D) vold fun(n,x);
(10) 有以下程序
fun(int a, int b)
{ if(a>b) return(a);
else return(b);
}
main()
{ int x=3, y=8, z=6, r;
r=fun (fun(x,y), 2*z);
printf("%d\n", r);
}
程序運行后的輸出結(jié)果是_____。
A) 3 B) 6 C) 8 D) 12