2010年计算机等级考试二级C语言一维数组与指针10

全国等级考试资料网 2022-09-23 20:24:09 120

(56) 执行以下程序后,y的值是

以下是引用片段:
main ( )
{ int a[]={2,4,6,8,10};
int y=1,x,*p;
p=&a[1];
for(x=0;x<3;x++) y + = * (p + x);
printf("%d ",y); }

A) 17

B) 18

C) 19

D) 20

(57) 下面程序的输出是

A) 3

B) 4

C) 1

D) 2

以下是引用片段:
main()
{ int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;
printf("%d ",*(p+2));}

(58) 请读程序:

以下是引用片段:
以下是引用片段:
#include 
f(in 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 ",x);
}

上面程序的输出结果是

A) 720

B) 120

C) 24

D) 6

(59) 请选出以下程序的输出结果

以下是引用片段:
#include
fun(s, n1, n2)
int *s, n1, n2;
{ int i, j, t;
i=n1; j=n2;
while(i 
{ t= *(s+i); *(s+i)= *(s+j); *(s+j)=t;
i++; j--;
}
}
main()
{ int a[10]={1,2,3,4,5,6,7,8,9,0},i, *p=a;
fun(p,0,3); fun(p,4,9); fun(p,0,9);
for(i=0; i<10; i++) printf("%d", *(a+i));
printf(" ");
}

A) 0 9 8 7 6 5 4 3 2 1

B) 4 3 2 1 0 9 8 7 6 5

C) 5 6 7 8 9 0 1 2 3 4

D) 0 9 8 7 6 5 1 2 3 4

(60) 以下程序调用findmax函数求数组中值最大的元素在数组中的下标,请选择填空。

以下是引用片段:
# include 
findmax ( s , t , k )
int *s , t , *k;
{ int p; for(p=0,*k=p;p 
if ( s[p] > s[*k] )_________; }
main()
{ int a[10] , i , k ;
for ( i=0 ; i<10 ; i + + ) scanf("%d",&a[i]);
findmax ( a,10,&k );
printf ( "%d,%d " , k , a[k] ); }

A) k=p

B) *k=p-s

C) k=p-s

D) *k=p

相关资料

相关阅读