二級C語言教程章節(jié)測試7.函數(shù)

字號:

一、選擇題
     (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