#include<stdio.h>
int main(void)
{
int a[10]= {1,9,5,6,4,8,0,2,3,7};
int flag=0;
while(flag==0)
{
flag=1;
int i;
for(i=0; i<9; ++i)
{
if(a[i]<a[i+1])
{
int temp=a[i];
a[i]=a[i+1];
a[i+1]=temp;
flag=0;
}
}
}
int j;
printf("max 5 numbers:");
for(j=0;j<5;++j)printf("%d ",a[j]);
printf("\n");
printf("min 5 numbers:");
for(j=9;j>=5;--j)printf("%d ",a[j]);
printf("\n");
}
追问你这个是投机取巧啊,j<5/j<10这样来将两组数分组。我想要输入的任意10个数,通过一个代码都能分成两组。而且麻烦留意“最小的五个数从小到大排序”
追答嗯...我写了冒泡,冒泡不是排序嘛...或者你的意思是单开一个数组存最大最小的那些?如果要实现从小到大排序的话,我可以再写一遍冒泡,从小到大排。是这个意思嘛?因为冒泡必须做完整排序,要是就要最大五个最小五个的话,选择排序更适合。需要我写一遍选择排序嘛?
追问麻烦你了,问题是这样的
就是那十个数,在代码里面可以随意换,然后程序还能按要求完成解答这个问题
追答题目说了要冒泡,那就冒泡好了,看起来不让用选择排序。而且,我觉得他题目说了输出第一行为什么,第二行为什么,他并没有管你自己怎么实现的...他没有说,把这10个数字前五个怎么排列,后五个怎么排列,然后输出。他说的是,输出的第一行是什么,第二行是什么。他没限制我内部怎么存这些数字。那我觉得我这样应该没问题。