c=a;
if(a>b) c=1; else
if(a==b) c=0; else c=-1; return(c); }
A) -1 B) 0 C) 1 D) 2 34.以下程序的输出结果为( )。 f(int b[ ], int n) {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(“%d\\n”, x); }
A) 720 B) 120 C) 24 35.下列程序执行后的输出结果是( )。 f(int a) {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(“%d\\n”, k); }
A) 3 B) 0 C) 5 36.下列程序执行后输出的结果是( )。 int d=1; fun(int p) {int d=5; d+=p++;
printf(“%d”, d); }
main( ) {int a=3;
D) 6D) 4 fun(a); d+=a++;
printf(“%d\\n”, d); }
A) 84 B) 96 C) 94 D) 85 37.以下程序的输出结果是( )。 fun(int k)
{if(k>0) fun(k-1); printf(“%d”, k); }
main( ) {int w=5; fun(w); }
A) 54321 B) 012345 C) 12345 D) 543210 38.以下说法中正确的是( )。
A) C语言程序总是从第一个定义的函数开始执行
B) 在C语言程序中,被调用的函数必须在main()函数中定义 C) C语言程序总是从main()函数开始执行
D) C语言程序中的main()函数必须放在程序的开始部分 39.以下程序的输出结果是( )。 int abc(int u, int v); main()
{int a=24, b=16, c; c=abc (a, b);
printf(“%d\\n”, c); }
int abc(int u, int v) {int w; while(v)
{w= u%v; u=v; v=w;} return u; }
A) 6 B) 7 C) 8 D) 9 二 填空题
1.下列程序的输出结果是 5 6 。 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(\ %d\\n\;
}
2.以下程序的运行结果是 8,17 。 #include
{int k=4, m=1, p;
p=func(k, m); printf(\ p=func(k, m); printf(\}
func(int a, int b) {static int m=0, i=2; i+=m+1; m=i+a+b; return m; }
3.以下程序输出的最后一个值是 120 。 int ff(int n) {static int f=l; f=f*n; return f; }
main() {int i;
for(i=1;i<=5;i++) printf(\}
4.以下函数的功能是:求x的y次方,请填空。 double fun(double x, int y) {int i; double z;
for(i=1, z=x; i 5.若变量n中的值为24,则prnt函数共输出 5 行,最后一行有 4 个数。 void prnt(int n, int aa[ ]) {int i; for(i=1; i<=n; i++) {printf(\ if(!(i%5)) printf(\ } printf(\} 6.以下程序中,主函数调用了LineMax函数,实现在N行M列的二维数组中,找出每一行上的最大值。请填空。 #define N 3 #define M 4 void LineMax(int x[N][M]) {int i, j, p; for(i=0; i for(j=1; j if(x[i][p] printf(\ x[i][p] ); } } main() {int x[N][M]={1,5,7,4,2,6,4,3,8,2,3,1}; LineMax(x) } 7.函数pi的功能是根据以下近似公式求π值: (π*π)/6=1+1/(2*2)+1/(3*3)+ ? +1/(n*n) 请在下面的函数中填空,完成求π的功能。 #include “math.h” double pi(long n) {double s=0.0; long i; for(i=1;i<=n; i++) s=s+ 1.0/i*i ; return(sqrt(6*s)); } 8.设在主函数中有以下定义和函数调用语句,且fun函数为void类型;请写出fun函数的首部 void fun( double b[10][22]) 。要求形参名为b。 main() {double s[10][22]; int n; ? fun(s); ? } 9.输入12时,程序输出结果为 12 is not prime number. ;若输入17,输出结果为 17 is prime number. 。 main() {int number; scanf(“%d”, &number); if(prime(number)) printf(“\\n%d is prime number.”, number); else printf(“\\n%d is not prime number.”, number); } int prime(int number) {int flag=1, n;