| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 1526 人关注过本帖
标题:选择排序中交换数据的不同方式出现的不同结果求分析
取消只看楼主 加入收藏
飞天大烧卖
Rank: 2
等 级:论坛游民
帖 子:45
专家分:27
注 册:2020-3-26
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:3 
选择排序中交换数据的不同方式出现的不同结果求分析
图片附件: 游客没有浏览图片的权限,请 登录注册

//选择排序,升序
void main()
{
    int i,min,j,t;
    int a[5]={5,3,4,21,2};
    for(i=0;i<4;i++)
    {
        min=i;//默认此时的a[i]最小
        for(j=i+1;j<5;j++)
        {
            if(a[min]>a[j])
            {
                min=j;
            }
        }
        if(min!=i)//找到了可以交换的数
        {
            min=a[i];//无t是5,21,2,3,4;有t是-85899346021234;用t来交换是234521
            a[i]=a[min];
            a[min]=min;
        }
    }
    for(i=0;i<5;i++)
    {
        printf("%d,",a[i]);
    }
}
2020-04-05 12:21
飞天大烧卖
Rank: 2
等 级:论坛游民
帖 子:45
专家分:27
注 册:2020-3-26
收藏
得分:0 
图中的1,2,3,分别表示代码不更改的情况,代码去掉变量t的情况,用变量t来交换数据的情况
2020-04-05 13:56
飞天大烧卖
Rank: 2
等 级:论坛游民
帖 子:45
专家分:27
注 册:2020-3-26
收藏
得分:0 
回复 3楼 wmf2014

vs2013编译器好像在栈区把构造类型给单独分开了,是这样吗
2020-04-05 18:00
飞天大烧卖
Rank: 2
等 级:论坛游民
帖 子:45
专家分:27
注 册:2020-3-26
收藏
得分:0 
回复 7楼 forever74
扎心了
2020-04-06 23:09
快速回复:选择排序中交换数据的不同方式出现的不同结果求分析
数据加载中...
 
   



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

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024047 second(s), 12 queries.
Copyright©2004-2025, BC-CN.NET, All Rights Reserved