| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 508 人关注过本帖
标题:任意数组气泡排列问题求教!!万分感谢!!!
只看楼主 加入收藏
人莫予毒
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2010-12-20
结帖率:100%
收藏
已结贴  问题点数:15 回复次数:3 
任意数组气泡排列问题求教!!万分感谢!!!
任意输入一个数组,然后按从小到大的顺序排列的程序,
改了几次总是还有问题,麻烦哪位帮帮忙吧,看看哪里错了。
主要问题是应该是中间循环的部分吧?最后输出时总是有一个数输出2次,导致a[1]或者a[10]的值不对。。
万分感谢!!!!
#define PI 10
#include "stdio.h"
main()
{
  int a[PI],i,n,transition;
  printf("\nPlease input array of %d numbers\n",PI);
  for(i=1;i<=PI;i++)
  {
    printf("a[%d]=",i);
    scanf("%d",&a[i]);
  }
  for(i=1;i<=PI;i++)
    for(n=PI;n>1;n--)
    if(a[n]<a[n-1])
    {transition=a[n];a[n]=a[n-1];a[n-1]=transition;}
  printf("the sorted numbers is\n");
  for(i=1;i<=PI;i++)
  {
  printf("a[%d]=%d    ",i,a[i]);
  if(i%5==0) printf("\n");
  }
}

[ 本帖最后由 人莫予毒 于 2010-12-23 20:31 编辑 ]
搜索更多相关主题的帖子: include transition numbers 
2010-12-23 20:22
人莫予毒
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2010-12-20
收藏
得分:0 
我把程序改成这样就好了。为什么要定义成[PI+1]呢???请教各位。
就是为什么a[1]到a[10]的数组要定义成a[11]呢?
我是刚刚学的。。请大伙指点一下。。
{
  int a[PI+1],i,n,transition;
  printf("\nPlease input array of %d numbers\n",PI);
  for(i=1;i<(PI+1);i++)
  {
    printf("a[%d]=",i);
    scanf("%d",&a[i]);
  }
2010-12-23 21:24
mengcong3959
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:41
专家分:113
注 册:2010-12-6
收藏
得分:8 
回复 2楼 人莫予毒
c语言里面数组默认是从0开始的,,你如果是定义为10,,还从1开始进行赋值,,实际上只能有9个值,第十个已经越界了。
2010-12-23 21:34
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
收藏
得分:8 
程序代码:
#include<stdio.h>
void main()
{
    int a[10]={9,6,3,8,5,2,7,4,1,11};
    int temp;
    for (int i=0;i<10-1;i++)
    {
        for (int j=0;j<10-1-i;j++)
        {
            if (a[j]>a[j+1])
            {
                temp=a[j];
                a[j]=a[j+1];
                a[j+1]=temp;
            }
        }
    }
    for (int k=0;k<10;k++)
    {
        printf("%d ",a[k]);
    }
} 
这个冒泡  效率不是很高  楼主可以自己看看倒叙

                                         
===========深入<----------------->浅出============
2010-12-23 21:46
快速回复:任意数组气泡排列问题求教!!万分感谢!!!
数据加载中...
 
   



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

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