| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 606 人关注过本帖
标题:这个结果不科学
只看楼主 加入收藏
月祭樱冢
Rank: 2
等 级:论坛游民
帖 子:83
专家分:97
注 册:2013-7-15
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:5 
这个结果不科学
一个选择法的代码
#include<stdio.h>
int main()
{void sort(int array[],int n);
int a[10],i;
printf("enter array:\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
sort(a,10);
printf("The sorted array:\n");
for(i=0;i<10;i++)
printf("%2d",a[i]);
printf("\n");
return 0;
}

void sort(int array[],int n)
{
    int i,j,k,t;
    for(i=0;i<n-1;i++)
    {    k=i;
    for(j=i+1;j<n;j++)
        if(array[j]<array[k])
            k=j;
        {t=array[k];array[k]=array[i];array[i]=t;}
}
}
输出结果是这样(见附件)不知道怎样贴图就手打了
enter array:
45 2 9 0 -3 54 12 5 66 33
The sorted array:
-3 0 2 5 91233455466
为什么会这样 后面的怎么没间隔了
另外这个是书上的原程序 书上的结果没这个问题 我用的也是VC++6.0



[ 本帖最后由 月祭樱冢 于 2013-7-22 23:58 编辑 ]
搜索更多相关主题的帖子: return include 
2013-07-22 23:50
岁月如刀
Rank: 6Rank: 6
来 自:冰冻星球
等 级:侠之大者
威 望:7
帖 子:165
专家分:477
注 册:2013-7-21
收藏
得分:5 

哦。我想说:
1、printf("%2d",a[i]);,把2d改成更大的3d,4d...
2、改成printf("%2d ", a[i]);

其实很科学。哈哈

Now. Game over.
2013-07-22 23:56
月祭樱冢
Rank: 2
等 级:论坛游民
帖 子:83
专家分:97
注 册:2013-7-15
收藏
得分:0 
回复 2楼 岁月如刀
3d 4d 都改了的  没用啊

算法是程序的灵魂
2013-07-22 23:59
岁月如刀
Rank: 6Rank: 6
来 自:冰冻星球
等 级:侠之大者
威 望:7
帖 子:165
专家分:477
注 册:2013-7-21
收藏
得分:0 

你太坏了~~~小贼~

嘿嘿。
3d就变成这样了,不行就5d放狗~~~

图片附件: 游客没有浏览图片的权限,请 登录注册

Now. Game over.
2013-07-23 00:04
love云彩
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:青藏高原
等 级:贵宾
威 望:53
帖 子:3663
专家分:11416
注 册:2012-11-17
收藏
得分:5 
2的位宽太小了,如果全部排列个位数当然没问题,但如果是十位数,百位数,肯定是连在一块输出了

思考赐予新生,时间在于定义
2013-07-23 00:09
月祭樱冢
Rank: 2
等 级:论坛游民
帖 子:83
专家分:97
注 册:2013-7-15
收藏
得分:0 
回复 4楼 岁月如刀
哦哦 原来如此

算法是程序的灵魂
2013-07-23 21:39
快速回复:这个结果不科学
数据加载中...
 
   



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

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