江湖救急,大佬咋错了

#include<stdio.h>
int shuzu[10],pos;
int *p  =  shuzu;
void  main()
{
    printf("请输入数字");
    for(int i = 0 ;i  <  10 ;i++)
    {
        scanf("%d",p+i);
    }
   for(int  pos ,j=1;j  <  10 ;j++)
   {

      if(shuzu[j]<shuzu[j+1])
            pos  = j;

   }
           printf("%d %d",*(p+pos),pos);
}
//这是个找出一个数组中最大值和其位置的函数。那不对!!!!!

 

void  main()
{
	int i=0,j=0,pos=0;
	
	printf("请输入数字");
	for(i=0;i<10 ;i++)
	{
		scanf("%d",p+i);
	}
	
	for(j=0;j<10;j++)
	{
		if(shuzu[j]<shuzu[j+1])
			pos = j+1;
	}
	printf("%d %d",*(p+pos),pos);
}

第二个循环。J从0开始,即比较shuzu[1]和shuzu[0]的大小开始,如果后面的大,要去后面的角标,所以pos要等于j+1

输入了1~10,结果正确,最大值为10,角标9,即shuzu[9]最大。

pos赋初始值0,j从0开始循环,< 改成 >。