CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  C语言

输入10个数字,排列大小后由小到大输出,谁能帮忙看看?

楼主BlueBent()2006-03-02 15:38:50 在 C/C++ / C语言 提问

main()  
  {  
    int   a[11];  
    int   i,j,t;  
    printf("input   10   numbers   :\n");  
    for(i=1;i<11;i++)  
  scanf("%d",&a[i]);  
    printf("\n");  
    for(j=1;j<=9;j++)  
            for(i=1;i<=10-j;i++)  
            if(a[i]>a[i+1])  
  {t=a[i];a[i]=a[i+1];a[i+1]=t;}  
            printf("the   sorted   numbers   :\n");  
            for(i=1;i<11;i++)  
            printf("%d",a[i]);  
    }  
   
   
  这个是瘫浩强   C语言程序设计   125页中间的题,输入没问题  
  但是不明白这里           for(i=1;i<=10-j;i++)   到底是什么意思  
  这几个循环还是没看懂,,55555  
  谁能详细点解释阿。。超级感谢+在线等待  
  加我也可以  
  QQ   136825  
  msn   bluebent@msn.com 问题点数:5、回复次数:11Top

1 楼adintr(www.adintr.com)(风流总被雨打风吹去)回复于 2006-03-02 15:43:11 得分 0

冒泡排序,看数据结构Top

2 楼BlueBent()回复于 2006-03-02 15:45:18 得分 0

楼上的请问有数据结构电子书么?Top

3 楼adintr(www.adintr.com)(风流总被雨打风吹去)回复于 2006-03-02 15:48:21 得分 0

网上一找一大堆:  
  http://www.chsegang.com.cn/firefox/datastruct/Sorting/04.htm  
  http://www.95678.cn/diannaoketang/xinshiji/shujujiegou/090201.asp.htmTop

4 楼terryjwf(开大奔的帅哥)回复于 2006-03-02 17:29:19 得分 1

http://community.csdn.net/Expert/topic/4440/4440723.xml?temp=.4413874  
  我的拙作,请笑纳!Top

5 楼keychar(初级程序员)回复于 2006-03-02 18:24:56 得分 0

最大的往后放,所以要比较的越来越少!Top

6 楼loveliu0429(lovelipei)回复于 2006-03-02 18:47:40 得分 0

最基本的冒泡  
  每一次都把大的往后放Top

7 楼xj_jiangg(xj_jiangg)回复于 2006-03-02 19:54:28 得分 0

C++如果熟悉的话可以做的很优美Top

8 楼xj_jiangg(xj_jiangg)回复于 2006-03-02 20:12:21 得分 1

贴一个,为什么大家不用c++提供的范型算法的东东呢?  
  #include   <iostream>  
  #include   <string>  
  #include   <iomanip>  
  #include   <iterator>  
  #include   <vector>  
  using   namespace   std;  
  int   main(void)   {  
        istream_iterator<int>   in(cin);  
        istream_iterator<int>   eof;  
        vector<int>   a;  
        copy(in,eof,back_inserter(a));  
        sort(a.begin(),a.end());  
        copy(a.begin(),a.end(),ostream_iterator<int>(cout,"   "));  
         
    }Top

9 楼zhanxiang(JackieSky)回复于 2006-03-02 21:01:05 得分 1

冒泡排序法:像气泡一样,轻的(小数)往上冒,重的(大数)往下沉!  
   
  每一次循环都得出一个最大的数,并放在最后,下次循环就不需要再参与比较了!  
   
  比如,第1次循环,第一个数和后面的9个数比较,符合要求的就交换,共比较(10-1)次;  
              第2次循环,第一个数和后面的8个数比较,符合要求的就交换,共比较(10-2)次;  
              ……  
  所以要比较的数越来越少!Top

10 楼jiazhen(go go go)回复于 2006-03-02 21:48:49 得分 1

for(i=1;i<=10-j;i++)   到底是什么意思  
  这个地方就是从第一个数开始,让它分别和后面的数做比较如果大于后一位就换位;  
  具体过程如下,若输入为10   9   8   7   6   5   4   3   2   1则有:  
  10   9   8   7   6   5   4   3   2   1  
  9   10   8   7   6   5   4   3   2   1  
  9   8   10   7   6   5   4   3   2   1  
  9   8   7   10   6   5   4   3   2   1  
  9   8   7   6   10   5   4   3   2   1  
      .  
      .  
      .  
  9   8   7   6   5   4   3   2   1   10  
  8   9   7   6   5   4   3   2   1   10  
  .  
  .  
  8   7   6   5   4   3   2   1   9   10  
  .  
  1   2   3   4   5   6   7   8   9   10  
  Top

11 楼wcg_jishuo()回复于 2006-03-02 21:52:45 得分 1

这个你要自己慢慢体会  
  大家初学的时候都跟你一样,  
  所以说要自己想,想不出来,就跟踪进去Top

相关问题

  • 输入输出
  • 如果在flash内将字体由小到大进行过渡?
  • 输入/输出问题
  • 数据库输入输出?
  • 输入输出流问题
  • 关于输入输出
  • 输入输出问题
  • 输入输出问题
  • 关于输入输出流!
  • 文件的输入输出

关键词

  • 循环
  • 个数
  • 次循环
  • iterator
  • include

得分解答快速导航

  • 帖主:BlueBent
  • terryjwf
  • xj_jiangg
  • zhanxiang
  • jiazhen
  • wcg_jishuo

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo