【发布时间】:2016-07-13 16:34:47
【问题描述】:
给定一个数组,我被要求以某种方式对其进行排序,以使最小值排在第一位,最大值排在第二位,最小值排在第三位,依此类推。但是,当我输入值时,我没有得到所需的输出。
感谢您的建议,因为我今天有考试。
#include<stdio.h>
int main()
{
int i,j,k,a[6],temp,min;
for(i=0;i<6;i++)
scanf("%d",&a[i]);
for(j=0;j<6;j++)
{
if(j%2==0)
{
min=a[j];
for(k=j;k<6;k++)
{
if(a[k++]<min)
min=a[k++];
}
temp=a[j];
a[j]=min;
min=temp;
}
else
{
min=a[j];
for(k=j;k<6;k++)
{
if(a[k++]>min)
min=a[k++];
}
temp=a[j];
a[j]=min;
min=temp;
}
printf("%d ",a[j]);
}
}
【问题讨论】:
-
谢谢,这个问题确实帮助了我,但我想知道为什么我的代码不正确。
-
这仍然是题外话。了解How to Ask。并使用调试器。
标签: c arrays algorithm sorting