(26) 以下程序中函数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(“%d\n”,s); } |
程序运行后的输出结果是
A) 22
B) 10
C) 34
D) 30
(27) 以下程序调用findmax函数返回数组中的最大值
以下是引用片段: findmax(int *a,int n) { int *p,*s; for(p=a,s=a; p-a if ( ) s=p; return(*s); } main() { int x[5]={12,21,13,6,18}; printf("%d\n",findmax(x,5)); } |
在下划线处应填入的是
A) p>s
B) *p>*s
C) a[p]>a[s]
D) p-a>p-s
(28) 若有定义:int aa[ 8];。则以下表达式中不能代表数组元aa[1]的地址的是
A) &aa[0]+1
B) &aa[1]
C) &aa[0]++
D) aa+1
(29) 以下程序的输出结果是
以下是引用片段: f(int b[],int m,int n) { int i,s=0; for(i=m;i return s; } main() {int x,a[]={1,2,3,4,5,6,7,8,9}; x=f(a,3,7); printf("%d\n",x); } |
A) 10
B) 18
C) 8
D) 15
(30) 假定int类型变量占用两个字节,其有定义:int x[10]={0,2,4};,则数组x在内存中所占字节数是
A) 3
B) 6
C) 10
D) 20
|