c语言编程输入十个数,空格分隔6 4 8 9 3 2 0 1 5 7输出1 2 3 4 5 6 7
#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]);
}
}
下面是我自己的运行结果:
希望可以帮助你,不求你的积分,只是希望你能够看懂这个程序,毕竟大家都曾是菜鸟,慢慢提高自己,加油!!!!
int main()
{
int i,a[10];
for(i=0;i<10;i++) scanf("%d",&a[i]);
printf("1 2 3 4 5 6 7 8 9 0");
}
#include"stdio.h"
int main()
{
int i,j,t,a[10];
for(i=0;i<10;i++) scanf("%d",&a[i]);
for(i=0; i<9; i++)
{
for(j=0;j<9-i;j++)
{
if(a[j]>a[j+1]) t=a[j],a[j]=a[j+1],a[j+1]=t;
}
}
for(i=0;i<10;i++) printf("%d ",a[i]);
return 0;
}
这是冒泡排序 很简单 有问题欢迎追问
谢谢
不能运行啊