| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1500 人关注过本帖
标题:请问哥哥姐姐们一个非常笨的问题,呵呵
只看楼主 加入收藏
zhanfffmmm
Rank: 5Rank: 5
等 级:职业侠客
帖 子:238
专家分:343
注 册:2009-10-16
收藏
得分:0 
楼主:小弟刚学C语言,这个程序中为什么 for(j=0;j<n-1;j++)
                                        for(k=0;k<n-1-j;k++)
这两句话不能直接写成for(k=0;k<n-1;k++)啊,迫切希望您的答复!/*他的意思:为什么不能直接写成一个for循环。*/
你说:应该可以,但是浪费程序时间,最后一个都已经是最大值了,你还和他比较干什么,到他前面的那个元素就够了/*你说能,这让我曲解啦*/
楼主:能运行,但是不能得到正确的答案,题目的要求是升序排列输出。
我说:想法不错啊,不过我无能为力。
...  ...
2010-06-02 17:51
aiyinsitan
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:183
专家分:177
注 册:2010-4-22
收藏
得分:0 
肯定不行啊
这个是个冒泡法排序啊
for(j=0;j<n-1;j++)//控制比较躺数
for(k=0;k<n-1-j;k++)//控制每趟中的比较次数
2010-06-02 18:38
huxiangwenhu
Rank: 4
等 级:业余侠客
威 望:1
帖 子:191
专家分:262
注 册:2010-6-1
收藏
得分:0 
我太高兴了,有这么多高手,我学编程有希望了,原来论坛这么好,呵呵
2010-06-02 19:12
zhukongyi
Rank: 1
等 级:新手上路
帖 子:6
专家分:1
注 册:2010-6-2
收藏
得分:1 
钳套的for循环是很经典的冒泡排序
每本编程书都会有提到的

拿 1 3 9 8 7 这5个数来说
内循环一次  变成 1 3 8 7 9
将最大的数移到了最后一位
但是并没有达到要求
所以外循环就不能少了
外循环的循环变量加一 然后进入内循环
将第二大的数放在倒数第二个位置
...
依次类推...


[ 本帖最后由 zhukongyi 于 2010-6-2 22:04 编辑 ]
2010-06-02 21:59
ZZlove
Rank: 2
等 级:论坛游民
帖 子:29
专家分:28
注 册:2010-3-7
收藏
得分:1 
回复 8楼 huxiangwenhu
#include<stdio.h>
#define n 5
main()
{
    int array[n];
    int j,k;
    int temp;
    for(j=0;j<n;j++)
    {
        scanf("%d",&array[j]);
    }
   // for(j=0;j<n-1;j++)   把这行删了。
        for(k=0;k<n-1-j;k++)
        if(array[k]>array[k+1])
        {
            temp=array[k];
            array[k]=array[k+1];
            array[k+1]=temp;
        }
    for(j=0;j<n;j++)
        printf("%5d",array[j]);
    printf("\n");
}
2010-06-03 00:27
huxiangwenhu
Rank: 4
等 级:业余侠客
威 望:1
帖 子:191
专家分:262
注 册:2010-6-1
收藏
得分:0 
回复 35楼 ZZlove
虽然还是没运行正确,但是仍旧谢谢你,呵呵
2010-06-03 12:08
huxiangwenhu
Rank: 4
等 级:业余侠客
威 望:1
帖 子:191
专家分:262
注 册:2010-6-1
收藏
得分:0 
回复 34楼 zhukongyi
呵呵,你说的太清楚了,谢谢了啊
2010-06-03 12:10
快速回复:请问哥哥姐姐们一个非常笨的问题,呵呵
数据加载中...
 
   



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

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