C语言怎样用数组把6个整型数按从小到大的顺序输出?

 我来答
一叹t
高能答主

2021-01-15 · 我们不创作,我们只是信息的搬运工。
一叹t
采纳数:2139 获赞数:11975

向TA提问 私信TA
展开全部

C语言实现将数组的六个元素按从小到大的顺序输出,可以采用内部排序算法对数组的元素进行排序,然后输出排序后的数组,就可以得到按从小到大的顺序输出。

快速排序为例的排序代码:

void quickSort(int a[],int l,int r) {

   if(l>=r)

       return;

   int i = l;

   int j = r;

   int key = a[l];//选择第一个数为key

   while(i<j) {

       while(i<j && a[j]>=key)//从右向左找第一个小于key的值

           j--;

       if(i<j) {

           a[i] = a[j];

           i++;

       }

       while(i<j && a[i]<key)//从左向右找第一个大于key的值

           i++;

       if(i<j) {

           a[j] = a[i];

           j--;

       }

   }

   a[i] = key;

   quickSort(a, l, i-1);//继续排左部分,递归调用

   quickSort(a, i+1, r);//继续排右部分,递归调用

}

int main() {

   int a[]= {12,4,132,55,46,232};//随机数组

   int i,n = sizeof(a)/sizeof(a[0]);//获取数组大小

   quickSort(a,0,n-1);//快速排序函数入口

   for(i = 0; i < n; i ++)//输出排序后的结果

       printf("%d ",a[i]);

   return 0;

}

扩展资料:

排序算法的评价标准:

1、时间复杂度,即从序列的初始状态到经过排序算法的变换移位等操作变到最终排序好的结果状态的过程所花费的时间度量。

2、空间复杂度,就是从序列的初始状态经过排序移位变换的过程一直到最终的状态所花费的空间开销。

3、使用场景,排序算法有很多,不同种类的排序算法适合不同种类的情景,可能有时候需要节省空间对时间要求没那么多,反之,有时候则是希望多考虑一些时间,对空间要求没那么高,总之一般都会必须从某一方面做出抉择。

4、稳定性,稳定性是不管考虑时间和空间必须要考虑的问题,往往也是非常重要的影响选择的因素。

基本的内部排序:冒泡排序、选择排序、插入排序、希尔排序、归并排序、快速排序、基数排序、堆排序。

参考资料来源:百度百科-排序算法

百度网友9851812
2012-07-24 · 超过15用户采纳过TA的回答
知道答主
回答量:124
采纳率:100%
帮助的人:40万
展开全部
可以选择不同的排序算法,具体的话,看楼主的功底了,有冒泡,选择,归并,快排,堆排,插入排序(各个有不同的用的地方,可以选择)
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
阿拉蕾楠楠
2012-07-23
知道答主
回答量:9
采纳率:0%
帮助的人:3.9万
展开全部
可以用冒泡排序或者快速排序,网上都有讲解的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lin946357665
2012-07-25
知道答主
回答量:58
采纳率:0%
帮助的人:17.9万
展开全部
可以用冒泡或者循环比较的方法输出
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
逄逄爱你
2012-08-02
知道答主
回答量:9
采纳率:0%
帮助的人:3.9万
展开全部
该程序为:
#include <stdio.h>
void main()
{
int a[5];
int i,j,t;
printf("请输入6个整数:");
for(i=0;i<6;i++)
scanf("%d",&a[i]);
for(i=1;i<6;i++)
for(j=1;j<=6-i;j++)
if(a[j-1]>a[j])
{
t=a[j-1];
a[j-1]=a[j];
a[j]=t;
}
printf("排序后的结果:");
for(i=0;i<6;i++)
printf("%d \n",a[i]);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式