coco1312 2015-11-21 20:51 采纳率: 0%
浏览 7813
已采纳

C填空题:键盘上输入10个整数,程序按降序完成从大到小排序

#include
void sort(int *p,int *q)
{
int *max,*s;
if(p>q)return;
max=p;
__ for(s=p+1;s<=q;s++)__
if()max=s;
swap();
sort((),q);
}
void swap(int *x,int *y)
{
int temp;
temp=*x;
*x=*y;
*y=temp;
}
void main()
{

int i,array[10];
for(i=0;i<10;i++)
    scanf("%d",());
sort((),array+9);
for(i=0;i<10;i++)
   printf("%d",*(array+i));

}

  • 写回答

2条回答 默认 最新

  • havedream_one 2015-11-21 23:40
    关注
     #include<stdio.h>
    void sort(int *p,int *q)
    {
        int *max,*s;
        if(p>q)return;
        max=p;
        //找寻p,q之间的最大值
        for(s=p+1;s<=q;s++)
            if(*s > *max)max=s;
        //将array[p]和之后的最大值交换
        swap(p,max);
        //排序array[p+1...q]
        sort(p+1,q);
    }
    void swap(int *x,int *y)
    {
        int temp;
        temp=*x;
        *x=*y;
        *y=temp;
    }
    void main()
    {
        int i,array[10];
        //赋值
        for(i=0;i<10;i++)
            scanf("%d",&array[i]);
        //对array数组排序
        sort(array,array+9);
        for(i=0;i<10;i++)
           printf("%d",*(array+i));
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog