一 單項選擇題
1.以下程序的輸出結(jié)果是( C )。
int d=1;
fun(int p)
{static int d=5;
d+=p;
printf("%d ",D);
return(D);
}
main( )
{ int a=3; printf("%d\n",fun(a+fun(D)));}
A) 6 9 9
B) 6 6 9
C) 6 15 15
D) 6 6 15
2.下列程序執(zhí)行后的輸出結(jié)果是( C )。
void func1(int i);
void func2(int i);
char st[ ]="hello,friend!";
void func1(int i)
{printf("%c", st[i]);
if(i<3){i+=2;func2(i);}
}
void func2(int i)
{printf("%c", st[i]);
if(i<3){i+=2;func1(i);}
}
main()
{int i=0; func1(i); printf("\n");}
A) hello
B) hel
C) hlo
D) hlm
3.在調(diào)用函數(shù)時,如果實參是簡單變量,它與對應(yīng)形參之間的數(shù)據(jù)傳遞方式是( B )。
A) 地址傳遞
B) 單向值傳遞
C) 由實參傳給形參,再由形參傳回實參
D) 傳遞方式由用戶指定
4.以下函數(shù)值的類型是( A )。
fun( float x )
{float y;
y=3*x-4;
return y;
}
A) int
B) 不確定
C) void
D) float
5.設(shè)有以下函數(shù):
f( int a)
{int b=0;
static int c=3;
b++; c++;
return(a+b+C);
}
如果在下面的程序中調(diào)用該函數(shù),則輸出結(jié)果是( A )。
main()
{int a=2, i;
for(i=0;i<3;i++) printf("%d\n", f(a));
}
A) 7
B) 7
C) 7
D) 7
8 9 10 7
9 11 13 7
6.以下程序的輸出結(jié)果是( B )。
int a, b;
void fun()
{a=100; b=200;}
main()
{int a=5, b=7;
fun();
printf("%d%d\n", a,
B);
}
A) 100200
B) 57
C) 200100
D) 75
7.以下所列的各函數(shù)首部中,正確的是( C )。
A) void play(var a:Integer, var b:Integer)
B) void play(int a, B)
C) void play(int a, int B)
D) Sub play(a as integer, b as integer)
8.以下程序的輸出結(jié)果是( C )。
fun(int x, int y, int z)
{z=x*x+y*y; }
main()
{int a=31;
fun(5, 2, a);
printf("%d", a);
}
A) 0
B) 29
C) 31
D) 無定值}
9.當(dāng)調(diào)用函數(shù)時,實參是一個數(shù)組名,則實參向形參傳遞的是( B )。
A) 數(shù)組的長度
B) 數(shù)組的首地址
C) 數(shù)組每一個元素的地址
D) 數(shù)組每個元素中的值
10.以下程序的輸出結(jié)果是( A )。
long fun( int n)
{long s;
if(n= =1 || n= =2) s=2;
else s=n-fun(n-1);
return s;
}
main()
{printf("%ld\n", fun(3)); }
A) 1
B) 2
C) 3
D) 4
11.有如下函數(shù)調(diào)用語句:
func(rec1, rec2+rec3, (rec4, rec5));
在該函數(shù)調(diào)用語句中,含有的實參個數(shù)是( A )。
A) 3
B) 4
C) 5
D) 有語法錯
12.有如下程序:
int func(int a,int B)
{return(a+B);}
main( )
{int x=2,y=5,z=8,r;
r=func(func(x,y),z);
printf(“%d\n”,r);
}
該程序的輸出的結(jié)果是( D )。
A) 12
B) 13
C) 14
D) 15
13.以下程序的輸出結(jié)果是( B )。
long fib(int n)
{if(n>2) return(fib(n-1)+fib(n-2));
else return(2);
}
main( )
{printf(“%ld\n”,fib(3));}
A) 2
B) 4
C) 6
D) 8
14.在C語言中,變量的隱含存儲類別是( A )。
A) auto
B) static
C) extern
D) 無存儲類別
15.在下列的函數(shù)調(diào)用中,不正確的是( D )。
A) max(a,B);
B) max(3,a+B);
C) max(3,5);
D) int max(a,B);
16.以下程序的輸出結(jié)果是( C )。
func(int x, int y)
{int z;
z=x+y;
return z;
}
main( )
{int a=10, b=20, c=30, s;
s=func((a--, b++, a+B), c--);
printf(“%d\n”, s);
}
A) 30
B) 40
C) 60
D) 50
17.現(xiàn)有以下程序:
#include
inverse(char str[ ])
{char t;
int i, j;
for(i=0, j=strlen(str); i {t=str[i]; str[i]=str[j-1]; str[j-1]=t; } } main( ) {char str[100]; scanf(“%s”, str); inverse(str); printf(“%s\n”, str); } 如果輸入an anple,該程序的輸出結(jié)果是( D )。 A) an anple B) elpna na C) an D) na 18.在下列敘述中,正確的一條是( A )。 A) puts和gets函數(shù)只能輸入或輸出一個字符串 B) 在C語言中,函數(shù)可以遞歸調(diào)用或遞歸定義 C) 用scanf函數(shù)輸入數(shù)據(jù)時可以規(guī)定精度,例如scanf(“%7.2f”,&a); D) 外部變量只限于本文件中使用 19.以下程序的輸出結(jié)果是( C )。 power(int x, int n) {int p; if(n>0) p=power(x, n-1)*x; else p=1; return (p); } main( ) {int x=2, n=3; printf(“%d\n”, power(x, n)); } A) 5 B) 6 C) 8 D) 9 20.在C語言的函數(shù)中( C )。 A) 必須有形參 B) 形參必須是變量名 C) 可以有也可以沒有形參 D) 數(shù)組名不能作形參
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |