c语言编程输入十个数,空格分隔6 4 8 9 3 2 0 1 5 7输出1 2 3 4 5 6 7 8 9 0,
#include <stdio.h>
int main()
{
int a[10];
int i,j,temp;
for(i = 0;i<10;i++) //输入10个数
{
scanf("%d",&a[i]);
}
for(i = 0;i<10;i++) //双循环对数组进行排序
for(j = i+1;j<10;j++)
{
if(a[i] > a[j])
{
temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
temp = a[0]; //排序后a[0]=0,但需要将0放到最后面,故可以先保存
//a[0],然后将数组元素向前
for(i = 0;i<9;i++)
{
a[i] = a[i+1];
}
a[9] = temp; //数组移完后将a[0]放到最后面,即a[9] = a[0]
for(i = 0;i<10;i++) //将数组输出
{
printf("%d ",a[i]);
}
}
下面是我自己的运行结果:
希望可以帮助你,不求你的积分,只是希望你能够看懂这个程序,毕竟大家都曾是菜鸟,慢慢提高自己,加油!!!!
这是冒泡排序 很简单 有问题欢迎追问
谢谢
不能运行啊
结果不对
追答不会吧。。我用的是CodeBlocks没问题 反正冒泡排序就这思想 你自己懂就行
追问恩
追答哦 0是最后输出是吧 把a[0]拿出来最后输出就行 先前没看清题o(* ̄▽ ̄*)o
追问恩