第五部分 函 数 ·6·
34.阅读以下函数:
fun(char s[],char t[]) {
int i=-1;
while(++i,s[i]==t[i]&&s[i]!=’\\0’); return(s[i]==’\\0’&&t[i]==’\\0’); }
以上函数的功能是( )。
A. 比较串s和t的长度 B. 比较串s和t的大小 C. 比较串s和t是否相等 D. 将串t赋给串s 35.以下程序的输出结果是( )。
f( int b[ ], int m, int n) {
int i,s=0;
for(i=m;i main() { int x, a[ ]={1,2,3,4,5,6,7,8,9}; x=f(a,3,7); printf(\} A. 10 B. 18 C. 8 D. 15 36.以下程序中函数reverse的功能是将a所指数组中的内容进行逆置。 void reverse(int a[ ],int n) { int i,t; for(i=0;i t=a[i]; a[i]=a[n-1-i];a[n-1-i]=t; } } main() { int b[10]={1,2,3,4,5,6,7,8,9,10}; int i,s=0; reverse(b,8); for(i=6;i<10;i++) s+=b[i]; printf(\} 程序运行后的输出结果是( )。 A. 22 B. 10 C. 34 D. 30 37.请读程序: #include 第五部分 函 数 ·7· func( int a, int b) { int c; c=a+b; return c; } main() { int x=6, y=7, z=8, r; r=func( (x--,y--,x+y),z--); printf(\} 上面程序的输出结果是( )。 A. 11 B. 19 C. 21 D. 31 38.请读程序: #include int i, r; r=1; for(i=0; i<=n; i++) r=r*b[i]; return r; } main() { int x, a[]={ 2,3,4,5,6,7,8,9}; x=f(a, 3); printf(\} 上面程序的输出结果是( )。 A. 720 B. 120 C. 24 D. 6 39.下面程序的输出是( )。 main() { int t=1; fun(fun(t)); } fun(int h) { static int a[3]={1,2,3}; int k; for(k=0;k<3;k++) a[k]+=a[k]-h; for(k=0;k<3;k++) printf(\printf(\ 第五部分 函 数 ·8· } A.1,2,3, B.1,3,5, C. 1,3,5, D. 1,3,5, 1,5,9, 1,3,5, 0,4,8, -1,3,7, 40.有如下程序 long fib(int n) { if(n>2) return(fib(n-1)+fib(n-2)); else return(2); } main() { printf(\} 该程序的输出结果是( )。 A. 2 B. 4 C. 6 D. 8 41.以下程序的输出结果是( )。 long fun( int n) { long s; if(n==1 || n==2) s=2; else s=n-fun(n-1); return s; } main() { printf(\} A. 1 B. 2 C. 3 42.以下程序的输出结果是( )。 func(int x) { int p; if(x==0||x==1) return(3); p=x-func(x-2); return p; } main() { printf(\} A. 7 B. 2 C. 0 D. 3 43.有以下程序 int f(int n) { D. 4 第五部分 函 数 ·9· if(n==1) return 1; else return f(n-1)+1; } main() { int i,j=0; for(i=1;i<3;i++) j+=f(i); printf(\} 程序运行后的输出结果是( )。 A. 4 B. 3 44.下面程序的输出是( )。 int w=3; main() { int w=10; printf(\} fun(int k) { if(k==0) return w; return(fun(k-1)*k); } A. 360 B. 3600 45.以下程序的输出结果是( )。 #include \int i=5; main() { int i=3; { int i=10;i++;} f1(); i+=1; printf(\} int f1() { i=i+1; return(i); } A.7 B.4 C.12 D.6 46.以下程序的输出结果是( )。 int a, b; void fun() C. 2 C. 1080 D. 1 D. 1200 第五部分 函 数 ·10· { a=100; b=200; } main() { int a=5, b=7; fun(); printf(\} A. 100200 B. 57 C. 200100 D. 75 47.以下程序输出结果是( )。 main() { int i; for(i=0;i<2;i++) add(); } add() { int x=0;static int y=0; printf(\x++; y=y+2; } A. 0,0 B. 0,0 C. 0,0 D. 0,0 0,0 0,2 1,0 1,2 48.设有以下函数: f (int a) { int b=0; static int c = 3; b++; c++; return(a+b+c); } 如果在下面的程序中调用该函数,则输出结果是( )。 main() { int a = 2, i; for(i=0;i<3;i++) printf(\} A. 7 B. 7 C. 7 D. 7 8 9 10 7 9 11 13 7 49.以下程序的输出的结果是( )。 int x=3; main()