如题所述
# include <stdio.h>
#define N 10//元素个数
void sort(int a[], int n)//排序函数
{
int i=0,j=0,temp;
for(i=0; i<n; i++)
{
for(j=i+1; j<n; j++)
{
if(a[j]<a[i])
{
temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
}
int main(void)
{
int num[N];
int i;
for(i=0; i<N; i++) scanf("%d",&num[i]);//输入元素
sort(num,N);//排序
for(i=0; i<N; i++) printf("%d ",num[i]);//输出
return 0;
}
#define N 10//元素个数
void sort(int a[], int n)//排序函数
{
int i=0,j=0,temp;
for(i=0; i<n; i++)
{
for(j=i+1; j<n; j++)
{
if(a[j]<a[i])
{
temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
}
int main(void)
{
int num[N];
int i;
for(i=0; i<N; i++) scanf("%d",&num[i]);//输入元素
sort(num,N);//排序
for(i=0; i<N; i++) printf("%d ",num[i]);//输出
return 0;
}
已经测试过了,测试结果:(有问题可以继续追问)
温馨提示:答案为网友推荐,仅供参考
第1个回答 2018-09-07
#include <stdio.h>
int main()
{int a[10],i,j,temp;
for(i=0;i<10;i++)
{scanf("%d",&a[i]);
}
for(i=0;i<9;i++)//从小到大输出
{
for(j=i+1;j<10;j++)
{
if(a[i]>a[j])
{
temp=a[j];
a[j]=a[i];
a[i]=temp;
}
}
}
for(i=0;i<10;i++)
{
printf("%d\n",a[i]);
}
return 0;
}
int main()
{int a[10],i,j,temp;
for(i=0;i<10;i++)
{scanf("%d",&a[i]);
}
for(i=0;i<9;i++)//从小到大输出
{
for(j=i+1;j<10;j++)
{
if(a[i]>a[j])
{
temp=a[j];
a[j]=a[i];
a[i]=temp;
}
}
}
for(i=0;i<10;i++)
{
printf("%d\n",a[i]);
}
return 0;
}
第2个回答 2013-11-20
可以用 冒泡排序等等
#include <iostream>using namespace std;
int main()
{
int a[10],i,j,t;
for(i=0;i<10;i++)
{
cin>>a[i];
}
for(i=0;i<10;i++)
{
for(j=0;j<9;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++)
{
cout<<a[i]<<" ";
}
cout<<endl;
return 0;
}
第3个回答 2013-11-20
#include <stdio.h>
int partions(int l[],int low,int high)
{
int prvotkey=l[low];
l[0]=l[low];
while (low<high)
{
while (low<high&&l[high]>=prvotkey)
--high;
l[low]=l[high];
while
int partions(int l[],int low,int high)
{
int prvotkey=l[low];
l[0]=l[low];
while (low<high)
{
while (low<high&&l[high]>=prvotkey)
--high;
l[low]=l[high];
while