标题:选择排序 程序无问题 但是运行输出不了结果
只看楼主
f14011123
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2014-11-9
结帖率:90.91%
已结贴  问题点数:20 回复次数:8 
选择排序 程序无问题 但是运行输出不了结果
#include<stdio.h>
void main()
{
    int i,j,k,temp;
    int a[10];
    printf("输入十个数字:");
    for(i=0;i<10;i++)
    {
        scanf("%d",&i);
    }
    for(i=0;i<10;i++)
    {
            k=i;
            for(j=i+1;j<10;j++)
            {
                if(a[k]<a[j])
                {
                    k=j;
                }
                if(k!=i)
                {
                    temp=a[i];
                    a[i]=a[k];
                    a[k]=temp;
                }
            }
    }
    for(i=0;i<10;i++)
            printf("%5d",a[i]);
}
搜索更多相关主题的帖子: include 
2015-01-09 09:15
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:20 
首先帮你解决输入问题  scanf("%d",&a[i]);

其次,你的算法还存在bug 请自行修正

DO IT YOURSELF !
2015-01-09 09:18
f14011123
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2014-11-9
得分:0 
回复 楼主 f14011123
知道了 scanf("%d",a[i]) 这里出错了
2015-01-09 09:18
f14011123
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2014-11-9
得分:0 
回复 2楼 wp231957
检查出来了 scanf("%d",&a[i])  这里赋值错了
2015-01-09 09:19
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
麻烦你下次贴时,不要 贴 程序没问题

既然程序没问题,你还来问啥????

DO IT YOURSELF !
2015-01-09 09:20
f14011123
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2014-11-9
得分:0 
回复 楼主 f14011123
#include<stdio.h>
void main()
{
    int i,j,k,temp;
    int a[10];
    printf("输入十个数字:");
    for(i=0;i<10;i++)
    {
        scanf("%d",&a[i]);
    }
    for(i=0;i<10;i++)
    {
            k=i;
            for(j=i+1;j<10;j++)
            {
                if(a[k]<a[j])
                {
                    k=j;
                }
                if(k!=i)
                {
                    temp=a[k];
                    a[k]=a[i];
                    a[i]=temp;
                }
            }
    }
    for(i=0;i<10;i++)
            printf("%5d",a[i]);
}
哈哈 bug找到了 如果k不等于i  之后元素位置调换出错了 太感谢你了
2015-01-09 09:26
f14011123
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2014-11-9
得分:0 
#include<stdio.h>
 void main()
 {
     int i,j,k,temp;
     int a[10];
     printf("输入十个数字:");
     for(i=0;i<10;i++)
     {
         scanf("%d",&a[i]);
     }
     for(i=0;i<10;i++)
     {
             k=i;
             for(j=i+1;j<10;j++)
             {
                 if(a[k]<a[j])
                 {
                     temp=a[j];
                     a[j]=a[k];
                     a[k]=temp;
                 }
             }
     }
     for(i=0;i<10;i++)
             printf("%5d",a[i]);
 }
2015-01-16 10:21
执笔画江山
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:3
帖 子:265
专家分:1010
注 册:2015-1-13
得分:0 
冒泡排序有这么复杂么看来我out了

授人以鱼,不如授人以渔
2015-01-16 11:45
执笔画江山
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:3
帖 子:265
专家分:1010
注 册:2015-1-13
得分:0 
哦 看错了  选择排序

授人以鱼,不如授人以渔
2015-01-16 11:46



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-440891-1-1.html




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

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