下列程序中 主函数调用findmax函数返回数组中的最大值。在下划线处应填入的是()。 #include <st

大学网课 已帮助 人

下列程序中,主函数调用findmax函数返回数组中的最大值。在下划线处应填入的是()。 #include <stdio.h> findmax(int *a, int n) { int *p, *s; for (p=a, s=a; p-a<n; p++) if(__________) s=p; return (*s); } int main() { int x[5]={12,21,13,6,18}; printf("%dn", findmax(x,5)); return 0; }

A.p>s

B.*p>*s

C.a[p]>a[s]

D.p-a>p-s

下列程序中 主函数调用findmax函数返回数组中的最大值。在下划线处应填入的是()。 #include &lt;st

热搜:bcd码转换成十进制程序函数

回答

共1条回复

  • B 解析:在main()函数中定义了一个具有5个元素的x数组并赋初值,然后调用findmax()函数求数组中元素的最大值。调用时把数组元素x的首地址,传给了形参指针变量a,把5传给形参n。在函数findmax()中定义了两种指针变量p和s,其中s用来记录最大元素的地址,p作为循环控制变量,表示每个元素的地址。求最大值的算法是先将第一个元素(用s记下它的地址)做为最大值,然后用最大值(*s)与后面的每个元素比较(*p),若后面的元素大,则用s记下它的地址,所以下划线应填“*8<*p或“*p>*8”。