问题
单项选择题
以下函数返回a所指数组中最大值所在的下标值,在下画线处应填入的内容是
fun(int *a,int n)
int i,j=0,p;
p=j;
for(i=j;i<n;i++)
if(a[i]>a[p])______;
return(p);
A) i=p
B) a[p]=a[i]
C) p=j
D) p=i
答案
参考答案:D
解析: 该题目要求的是最大数的位置(下标)。程序通过对a所指数组中的元素进行逐个比较,记录最大数的下标i,并把该下标记录在变量p中,所以,如果a[i]>a[p]关系成立,则应该把i的值赋给p,这样才满足题目的要求。