| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 857 人关注过本帖
标题:求精<初学的看下.>
只看楼主 加入收藏
东台野人
Rank: 1
来 自:江苏省东台市
等 级:新手上路
帖 子:57
专家分:0
注 册:2007-11-17
收藏
 问题点数:0 回复次数:9 
求精<初学的看下.>
main()
{int a[11],i,j,t;
 printf("input ten numbers:\n");
 for(i=1;i<11;i++)scanf("%d",&a[i]);
 printf("\n");
 for(i=1;i<10;i++)
   for(j=10;j>i;j--)
    if(a[j-1]>a[j])
     {t=a[j];a[j]=a[j-1];a[j-1]=t;}
 printf("the sorted numbers:\n");
 for(i=1;i<11;i++)printf("%d  ",a[i]);
}
*******************************************
上面是用气泡法从小到大排列输入的10位数.
如何修改源程,从而提高效率?
搜索更多相关主题的帖子: 初学 
2007-11-24 17:18
天人和一
Rank: 1
等 级:新手上路
帖 子:137
专家分:0
注 册:2007-10-11
收藏
得分:0 
o(∩_∩)o...哈哈
:o :o
#include "stdio.h"
main()
{
    int a[10],i,j,t;
    printf("input ten numbers:\n");
    for(i=0;i<10;i++)
    scanf("%d",&a[i]);
    printf("\n");
    for(i=0;i<10;i++)
    for(j=10;j>i;j--)
    if(a[j-1]>a[j])
     {
         t=a[j];
         a[j]=a[j-1];
         a[j-1]=t;
     }
     printf("the sorted numbers:\n");
     for(i=0;i<10;i++)
     printf("%d  ",a[i]);
}
2007-11-24 17:45
东台野人
Rank: 1
来 自:江苏省东台市
等 级:新手上路
帖 子:57
专家分:0
注 册:2007-11-17
收藏
得分:0 
我写的时候没注意缩进.
这程序在每个数的比较中都是从尾比到头.如果前面都排列好了1.2.3.4.5.6.7.8.9.最后一个10系统也会和前面的比.能不能让程序提前就知道不需要再比了呢.?
因为<<吉林大学C语言视频教程>>这一题最后没有讲到.我自己怎么想就是想不会...
求各位C达人帮帮忙..加个注释在后面最好.!

永远记住:自己的取得成功的决心比什么都重要
2007-11-24 18:06
天人和一
Rank: 1
等 级:新手上路
帖 子:137
专家分:0
注 册:2007-10-11
收藏
得分:0 
你看一下“数据结构”就知道了 ,那上又很多种排序的方法啊!!!
插入排序
交换排序
选择排序
归并排序
基数排序。。。。
2007-11-24 18:42
东台野人
Rank: 1
来 自:江苏省东台市
等 级:新手上路
帖 子:57
专家分:0
注 册:2007-11-17
收藏
得分:0 
:time: 需要时间哦.我才学到气泡法..到这里就不怎么会了.
:'(我先学去...
谢谢你啦./!

永远记住:自己的取得成功的决心比什么都重要
2007-11-24 18:47
learnerboy
Rank: 2
等 级:论坛游民
帖 子:246
专家分:22
注 册:2007-11-11
收藏
得分:0 
这个冒泡挺个性了啊!从后往前排了!
2007-11-24 22:41
hago
Rank: 1
等 级:新手上路
帖 子:52
专家分:0
注 册:2007-11-3
收藏
得分:0 
#include<stdio.h>
int buddle(int array[],int n)
{
    int m,t;
    for(n;n>0;n--)
    for(m=0;m<=n-2;m++)
    if(array[m]>array[m+1])
    {t=array[m];array[m]=array[m+1];array[m+1]=t;}
}
int main()
{
    int a[50];
    int i,j,k;
    printf("input the num:");
    scanf("%d",&i);
    printf("\n");
    for(j=0;j<i;j++)
    {
        scanf("%d ",&a[j]);
    }
    buddle(a,i);
    for(k=0;k<i;k++)
    printf("%d ",a[k]);
    return 0;
}
冒泡法排序
2007-11-24 22:49
l670397306
Rank: 1
等 级:新手上路
帖 子:96
专家分:0
注 册:2007-10-13
收藏
得分:0 
我也是学到这里来了啊

2007-11-25 09:39
cosdos
Rank: 9Rank: 9Rank: 9
来 自:ShangHai
等 级:蜘蛛侠
威 望:6
帖 子:2109
专家分:1385
注 册:2007-6-19
收藏
得分:0 
#include <stdlib.h>   

qsort()  /* 去查下这个函数的算法 */

—>〉Sun〈<—
2007-11-25 09:42
zglcx123
Rank: 2
等 级:论坛游民
帖 子:60
专家分:10
注 册:2007-7-2
收藏
得分:0 
老火,我学的那本书,只讲了概念,有些例题,但没有各种算发,,冒泡法还是论坛上看到的,看来又的买书了
2007-11-25 09:49
快速回复:求精<初学的看下.>
数据加载中...
 
   



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

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