第五部分 函 数 ·11·
{
int i;
for (i=1;i incre() { static int x=1; x*=x+1; printf(\} A. 3 3 B. 2 2 50.有以下程序 int a=3; main() { int s=0; { int a=5; s+=a++; } s+=a++;printf(\} 程序运行后的输出结果是( )。 A. 8 B. 10 51.下面程序的输出是( )。 fun3(int x) { static int a=3; a+=x; return(a); } main() { int k=2, m=1, n; n=fun3(k); n=fun3(m); printf(\} A. 3 B. 4 C. 6 D. 9 52.下面程序的输出是( )。 int m=13; int fun2(int x, int y) { int m=3; return(x*y-m); } main() C. 2 6 D. 2 5 C. 7 D. 11 第五部分 函 数 ·12· { int a=7, b=5; printf(\} A. 1 B. 2 C. 7 D. 10 53.下列程序执行后输出的结果是( )。 #include int b=0; static c=3; a=c++,b++; return (a); } main( ) { int a=2,i,k; for(i=0;i<2;i++) k=f(a++); printf(\} A. 3 B. 0 C. 5 D. 4 54.下列程序执行后输出的结果是( )。 int d=1; fun (int p) { int d=5; d+=p++; printf(\} main( ) { int a=3; fun(a); d+=a++; printf(\} A. 84 B. 96 C. 94 D. 85 55.以下程序的输出结果是( )。 int d=1; fun(int p) { static int d=5; d+=p; printf(\return(d); } main( ) 第五部分 函 数 ·13· { int a=3; printf(\} A. 6 9 9 B. 6 6 9 C. 6 15 15 D. 6 6 15 5.2 填空题 1. 下面程序的输出结果是 ________。 int t(int x,int y,int cp,int dp) { cp=x*x+y*y; dp=x*x-y*y; } main( ) { int a=4,b=3,c=5,d=6; t(a,b,c,d); printf(\; } 2. 下面程序运行后的输出结果是________。 void fun(int x,int y) { x=x+y;y=x-y;x=x-y; printf(\} main() { int x=2,y=3; fun(x,y); printf(“%d,%d\\n”,x,y); } 3. 下面程序的输出结果是________。 void fun() { static int a=0; a+=2; printf(\} main() { int cc; for(cc=1;cc<4;cc++) fun(); printf(\} 第五部分 函 数 ·14· 4. 下面程序输出的最后一个值是________。 int ff(int n) { static int f=1; f=f*n; return f; } main() { int i; for(i=1;i<=5;i++) printf(\} 5. 下面程序运行结果为________。 #include int i; for(i=0;i<2;i++) as(); } as() { int lv=0; static int sv=0; printf(\lv++;sv++; return; } 6. 下面程序的输出是________。 unsigned fun6( unsigned num) { unsigned k=1; do { k*=num; num/=10; } while(num); return(k); } main() { unsigned n=26; printf(\} 7. 下面程序的输出结果是________。 #include 第五部分 函 数 ·15· fun( int x) { int p; if( x==0||x==1) return(3); p=x-fun( x-2); return p; } main() { printf( \} 8. 下面程序的输出是________。 long fun5(int n) { long s; if((n==1)||(n==2)) s=2; else s=n+fun5(n-1); return(s); } main() { long x; x=fun5(4); printf(\} 9. 下面程序的输出是________。 #define MAX 5 int a[MAX],k; main() { fun1();fun3(); fun2(); fun3(); printf(\} fun1() { for(k=0;k fun2() { int a[MAX],k; for(k=0;k<5;k++) a[k]=k; }