我想输入十个数,把其中最小值放在第一位,最大值放在最后一位但我这个输出结果不准确
#include <stdio.h>
#include <stdlib.h>
void swap(int num[])
{
int *min=num,*max=num,*i;
for(i=num;i<num+10;i++)//这里循环结束i指针在数组末尾
{
if(*min>*i)
{
min=i;
}
if(*max<*i)
{
max=i;
}
}
i=num;//重新赋值为数组首地址
int temp=*i;
*i=*min;
*min=temp;
temp=*(i+9);
*(i+9)=*max;
*max=temp;
}
int main()
{
int num[10];
for(int i=0;i<10;i++)
{
scanf("%d",&num[i]);
}
swap(num);
for(int i=0;i<10;i++)
{
printf("%d ",num[i]);
}
printf("\nHello world!\n");
return 0;
}