懒得开程序写
提供点思路吧
先设定两个整形变量分别用来储存最大的元素以及其下标
然后用循环语句进行逐一判别大小
使的其中表示元素的大小的变量的值保持最大 同时使下标为对应下标
#include
int fun(int *a, int len)
{
int k = *a,j = 0;
for (int i = 1; i < len; i++)
{
if (k < *(a+i))
{
k = *(a+i);
j = i;
}
}
return j;
}
int main()
{
int a[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
printf("%d", fun(a, 10));
return 0;
}
P是指针,指针加法就是指针在内存中的移动,因此P+1就是使P指向下一个位置;0是下标号,亦即首元素;[]是数组取元素值的一种方法,运算的结果是其中下标位置的值,与*类似,例如此处的*(P+1)等价于P[1],亦即a[1],因此输出的值即a[1][0],就是9。