| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3893 人关注过本帖
标题:新手用冒泡排序法对10个数由小到大排序,代码是从书上扒下来的不只是哪里错 ...
只看楼主 加入收藏
hegaohang
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2011-10-18
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:6 
新手用冒泡排序法对10个数由小到大排序,代码是从书上扒下来的不只是哪里错了。
#include<stdio.h>
void main()
{
  int a[10],i,j,t;
  printf("input 10 integer numbers:\n");
  for(i=0;i<10;i++)
      scanf("%d",&a[i]);
  printf("\n");
  for(j=0;j<9;j++)
    for(i=0;i<9-j;i++)
    if(a[i]>a[i+1])
    {
    t=a[i];
    a[i]=a[i+1];
    a[i+1]=t;
     }
    printf("the sorted numbers:\n");
    for(i=0;i<10;i++)
    printf("%d",a[i]);
}

[ 本帖最后由 hegaohang 于 2013-7-29 11:18 编辑 ]
搜索更多相关主题的帖子: numbers 
2013-07-29 08:33
丶弱水彡千
Rank: 5Rank: 5
来 自:地狱十九层
等 级:职业侠客
威 望:2
帖 子:203
专家分:369
注 册:2013-6-16
收藏
得分:5 
printf("the sorted numbers:\n");
    for(i=0;i<10;i++)//错了
    printf("%d",a[i]);
}

for(i=1;i<11;i++)

这个怎么玩
2013-07-29 08:48
丶弱水彡千
Rank: 5Rank: 5
来 自:地狱十九层
等 级:职业侠客
威 望:2
帖 子:203
专家分:369
注 册:2013-6-16
收藏
得分:0 
#include "stdio.h"
int main(void)
{
int i,j,temp;
int a[10];
for(i=0;i<10;i++)
scanf ("%d,",&a[i]);
for(j=0;j<=9;j++)
{
    for (i=0;i<10-j;i++)
        if (a[i]>a[i+1])
        {
            temp=a[i];
            a[i]=a[i+1];
            a[i+1]=temp;
        }
}
for(i=1;i<11;i++)
printf("%5d,",a[i] );
printf("\n");
    return 0;

}

这个怎么玩
2013-07-29 08:56
hegaohang
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2011-10-18
收藏
得分:0 
回复 3楼 丶弱水彡千
为什么只有1到10可以得到正确排序,其他的不可以。
2013-07-29 09:13
q13678986740
Rank: 4
等 级:业余侠客
帖 子:114
专家分:245
注 册:2012-7-7
收藏
得分:5 
#include<stdio.h>
void main()
{
  int a[10],i,j,t;
  printf("input 10 integer numbers:\n");
  for(i=0;i<10;i++)
      scanf("%d",&a[i]);
  printf("\n");
  for(j=0;j<9;j++)
    for(i=0;i<9-j;i++)//这里多个分号
    if(a[i]>a[i+1])
    {
    t=a[i];
    a[i]=a[i+1];
    a[i+1]=t;
     }
    printf("the sorted numbers:\n");
    for(i=0;i<10;i++)
    printf("%d",a[i]);
}
2013-07-29 10:32
hegaohang
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2011-10-18
收藏
得分:0 
回复 3楼 丶弱水彡千
printf("%5d,",a[i] );
这句话%5d后面的,是不是说每打印一个数就会输出一个逗号?
for(j=0;j<=9;j++)
    for (i=0;i<10-j;i++)
你的第一句改的是对的;第二句中应该是 for (i=0;i<9-j;i++)
2013-07-29 12:06
some_times
Rank: 2
等 级:论坛游民
帖 子:6
专家分:19
注 册:2012-8-7
收藏
得分:5 
#include<stdio.h>
void main()
{
  int a[10],i,j,t;
  printf("input 10 integer numbers:\n");
  for(i=0;i<10;i++)
      scanf("%d",&a[i]);
  printf("\n");
  for(j=0;j<9;j++)
    for(i=0;i<9-j;i++)//这里多个分号
    if(a[i]>a[i+1])
    {
    t=a[i];
    a[i]=a[i+1];
    a[i+1]=t;
     }
    printf("the sorted numbers:\n");
    for(i=0;i<10;i++)
    printf("%d",a[i]);
}
2013-07-29 12:12
快速回复:新手用冒泡排序法对10个数由小到大排序,代码是从书上扒下来的不只是哪 ...
数据加载中...
 
   



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

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