chenyimu 发表于 2014-6-11 14:27:39

关于c语言冒泡的问题,出错,求解

本帖最后由 风之残月 于 2014-11-10 10:27 编辑

我的看了小甲鱼的视频关于c语言冒泡法的视频关于整数的大小排列顺序,我在想是否可以作一个关于十个实数的大小排列的方法,但是运行出错,请看代码.#include <stdio.h>
void main()
{
      float a;
      int i,j;float t;
      printf("请你输入十个数:\n");
      for(i=0;i<10;i++)
      {
                if(0==i%5)
                {
                        printf("\n");
                }
                scanf("%d",&a);
      }
      printf("\n");
      for(j=0;j<9;j++)
      {
                for(i=0;i<9-j;i++)
                {
                        if(a>a)
                        {
                              t=a;a=a;a=t;
                        }
                }
      }
      printf("有小到大的排列:\n");
      for(i=0;i<10;i++)
      {
      printf("%5d",a);
      }
      printf("\n");
}

风之残月 发表于 2014-6-11 14:27:40

你代码里面的错误有几处地方,我把代码发出来,你看看吧#include <stdio.h>

void main()
{
      float a;
      int i,j;
        float t;
      printf("请你输入十个数:\n");
      for(i=0; i<10; i++)
      {
                scanf("%f", &a);
      }
      printf("\n");
      for(j=0; j<9; j++)
      {
                for(i=0; i<9-j; i++)
                {
                        if(a > a)
                        {
                              t          = a;
                                a   = a;
                                a = t;
                        }
                }
      }
      printf("从小到大的排列:\n");
      for(i=0; i<10; i++)
      {
                        printf("%5f ", a);
      }
      printf("\n");
}

chenyimu 发表于 2014-6-11 14:29:05

我是用vs2010编写的哦,求大家看看啊

小泉向西流 发表于 2014-6-11 14:50:24

本帖最后由 小泉向西流 于 2014-6-11 15:19 编辑

#include<stdio.h>

小泉向西流 发表于 2014-6-11 14:54:09

scanf("%d",&a);//a 是数组名,对数组中的单元写入数据,应用&a;

if(a>a)
{t=a;a=a;a=t;}
大小交换, 一个是数组单元,一个是数组名, 有错误。

for(i=0;i<10;i++)
      {
      printf("%5d",a);
      }
循环输出,格式错误。

chenyimu 发表于 2014-6-11 17:18:57

风之残月 发表于 2014-6-11 14:27 static/image/common/back.gif
你代码里面的错误有几处地方,我把代码发出来,你看看吧

我知道是什么错误了,只是格式控制弄错了,其实我那个是有括号的,不知道复制的时候怎么没有了,哈哈哈,谢谢你啊

chenyimu 发表于 2014-6-11 17:20:10

小泉向西流 发表于 2014-6-11 14:54 static/image/common/back.gif
scanf("%d",&a);//a 是数组名,对数组中的单元写入数据,应用&a;

if(a>a)


谢谢你啊 ,我把格式搞错了,谢谢你提醒,
页: [1]
查看完整版本: 关于c语言冒泡的问题,出错,求解