| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2489 人关注过本帖
标题:4个数从小到大排序
只看楼主 加入收藏
wkz2012
Rank: 4
等 级:业余侠客
帖 子:123
专家分:253
注 册:2012-12-13
收藏
得分:0 
#include<stdio.h>
int main()
{
    int a[4];//定义一个数组
    int i,temp;//定义一个temp变量,用来交换值的
    printf("请输入四个数:\n");
    for(i=0;i<4;i++)
        scanf("%d",&a[i]);
    for(i=3;i>0;i--)
    {
     for(j=0;j<i,j++)
    {
       if(a[i]<a[j])           
       {temp=a[j];a[j]=a[i];a[i]=temp;}  
    }
}
    printf("排序后的数字如下:\n");
    for(i=0;i<4;i++)
        printf("%3d",a[i]);
    printf("\n");
    return 0;
}


这样改一下不知对不对,没有试

我了个去的编程!
2012-12-25 15:25
love云彩
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:青藏高原
等 级:贵宾
威 望:53
帖 子:3663
专家分:11416
注 册:2012-11-17
收藏
得分:0 
#include<stdio.h>
int main()
{
    int a[4];
    int i,j,k;
    printf("请输入四个数:\n");
    for(i=0;i<4;i++)
        scanf("%d",&a[i]);
    for(i=0;i<4;i++)
    {
        for(j=0;j<3;j++)
        {
            if(a[j]>a[j+1])
            {
                k=a[j];
                a[j]=a[j+1];
                a[j+1]=k;
            }
        }
    }
    printf("排序后的数字如下:\n");
    for(i=0;i<4;i++)
        printf("%3d",a[i]);
    printf("\n");
    return 0;
}
这个是典型的冒泡法,不知道楼主你能不能看得懂

思考赐予新生,时间在于定义
2012-12-25 15:35
love云彩
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:青藏高原
等 级:贵宾
威 望:53
帖 子:3663
专家分:11416
注 册:2012-11-17
收藏
得分:0 
回复 21楼 wkz2012
还要定义j,
#include<stdio.h>
int main()
{
    int a[4];//定义一个数组
    int j,i,temp;//定义一个temp变量,用来交换值的
    printf("请输入四个数:\n");
    for(i=0;i<4;i++)
        scanf("%d",&a[i]);
    for(i=3;i>0;i--)
    {
     for(j=0;j<i;j++)
    {
       if(a[i]<a[j])           
       {temp=a[j];a[j]=a[i];a[i]=temp;}  
    }
}
    printf("排序后的数字如下:\n");
    for(i=0;i<4;i++)
        printf("%3d",a[i]);
    printf("\n");
    return 0;
}

思考赐予新生,时间在于定义
2012-12-25 15:37
wkz2012
Rank: 4
等 级:业余侠客
帖 子:123
专家分:253
注 册:2012-12-13
收藏
得分:0 
回复 23楼 love云彩
的确,改完后,忘了

我了个去的编程!
2012-12-25 15:39
love云彩
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:青藏高原
等 级:贵宾
威 望:53
帖 子:3663
专家分:11416
注 册:2012-11-17
收藏
得分:0 
还有一种很叫做快速排序法,楼主能参考一下的
#include<stdio.h>
int main()
{
    int a[4];
    int i,j,k,m;
    printf("请输入四个数:\n");
    for(i=0;i<4;i++)
        scanf("%d",&a[i]);
    for(i=0;i<3;i++)
    {
          k=i;
          for(j=i+1;j<4;j++)
              if(a[k]>a[j])
                  k=j;
          if(k!=i)
          {m=a[i];a[i]=a[k];a[k]=m;}
    }
    printf("排序后的数字如下:\n");
    for(i=0;i<4;i++)
        printf("%3d",a[i]);
    printf("\n");
    return 0;
}

思考赐予新生,时间在于定义
2012-12-25 15:52
龚卿
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2012-12-25
收藏
得分:0 
谢谢
~~
2012-12-25 16:02
love云彩
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:青藏高原
等 级:贵宾
威 望:53
帖 子:3663
专家分:11416
注 册:2012-11-17
收藏
得分:0 
赶紧结贴吧。嘿嘿,养成好习惯才行哦

思考赐予新生,时间在于定义
2012-12-25 16:13
龚卿
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2012-12-25
收藏
得分:0 
以下是引用wkz2012在2012-12-25 15:25:18的发言:

#include
int main()
{
    int a[4];//定义一个数组
    int i,temp;//定义一个temp变量,用来交换值的
    printf("请输入四个数:\n");
    for(i=0;i<4;i++)
        scanf("%d",&a);
    for(i=3;i>0;i--)
    {
     for(j=0;j
这是for循环么?
2012-12-25 16:15
wkz2012
Rank: 4
等 级:业余侠客
帖 子:123
专家分:253
注 册:2012-12-13
收藏
得分:0 
回复 28楼 龚卿
for循环的基本格式
for(表达式1;表达式2;表达式3) 语句
关于更详细的可以上网或者看书,找一些相关的小程序看一下就明白了

我了个去的编程!
2012-12-25 16:17
尹金魁2031
Rank: 3Rank: 3
来 自:河南省南阳市
等 级:论坛游侠
帖 子:156
专家分:162
注 册:2012-12-29
收藏
得分:0 
哥哥,这是排序而以,而非用键盘输入数据,并对其进行排序.
2013-01-02 19:47
快速回复:4个数从小到大排序
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.038963 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved