C语言编程:输入10个整数存入数组a中然后按从打到小的顺序排序并输出。

急 ··帮帮忙 谢谢啦··

第1个回答  2019-04-25
#include<iostream.h>
{
int
a[10];
int
i,j,k;
for(k=0;k<10;k++)
cin>>a[k];
for(i=0;i<9;i++)
for(j=i+1;j<=9;j++)
if(a[j-1]<=a[j])
{b=a[j-1];a[j-1]=a[j];a[j]=b;}
for(k=0;k<10;k++)
cout<<a[k]<<endl;
}
最基本的一个算法,冒泡排序。因为只有10个数据,所以算法复杂性也就没必要限制了,这个算法比较经典而且写法容易。
第2个回答  2020-10-18
//===
#include
#include
#include
//--
void
random(int
a[11])
//产生随机数并保存在数组中
{
int
i;
srand((unsigned)time(null));
for(i=0;i<10;i++)
{
a[i]=(int)rand()%100;
if(a[i]<10)
//保证产生的随机数为2位数
a[i]+=10;
}
}
//---
void
sort(int
a[11])
//冒泡法排序
{
int
i,j,t;
for(i=0;i<10-1;i++)
for(j=0;j<10-i;j++)
{
if(a[j]
=0;i--)
{
if(a[i]
=0)
{
printf("删除后的数组为:");
output(a);
}
else
printf("输入有误!");
}
//===
第3个回答  2020-06-13
#include
<stdio.h>
int
main()
{
int
a[10],i,j;
for(i=0;i<10;i++)
{
printf("请输入第%d个:",i+1);
scanf("%d",&a[i]);
}
for(i=0;i<9;i++)
for(j=i+1;j<10;j++)
if(a[i]<a[j])
{
int
k;
k=a[i];
a[i]=a[j];
a[j]=k;
}
for(i=0;i<10;i++)
printf("%d
",a[i]);
return
0;
}
第4个回答  2019-11-12
#include<stdio.h>
void
main()
{
int
a[10];
int
i,j,t;
printf("input
10
numbers:\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
printf("\n");
for(j=0;j<9;j++)
for(i=0;i<9-j;i++)
if(s[i]>a[i+1])
{
t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
printf("the
sorted
numbers:\n");
for(i=0;i<10;i++)
printf("%d",a[i]);
printf("\n");
}
第5个回答  2020-06-18
#include
<stdio.h>
void
main()
{
int
nA[10];
for(int
nI
=
0;
nI
<
10;
nI++)
{
scanf("%d",&nA[nI]);
}
for(nI
=
0;
nI
<
10
-
1;
nI++)
{
for(int
nJ
=
nI;
nJ
<
10
-
nI;
nJ++)
{
if(nA[nJ]
>
nA[nJ
+
1])
{
int
temp
=
nA[nJ];
nA[nJ]
=
nA[nJ
+
1];
nA[nJ
+
1]
=
temp;
}
}
}
for(nI
=
0;
nI
<
10;
nI++)
{
printf("%d
",
nA[nI]);
}
}