鱼C论坛

 找回密码
 立即注册
查看: 3995|回复: 2

冒泡排序的问题

[复制链接]
发表于 2013-3-30 11:38:14 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 权志龙_爱死你la 于 2013-3-30 11:39 编辑

今天在运行冒泡法排序的程序时 在输入块有个小问题        for(i=0;i<10;i++)
        {
                scanf("%d",&a[i]);
        }
刚开始 我在%d后面面加了一个空格 在运行时  输入了十个int数字 回车确不能输出结果 我试着又随便输入十个 回车就输出了我原本要排序的十个数字的排序结果 我以为是因为%d后面的空格数  所以试着%d后面又多加一个空格 运行时 还是只要多输入十个数字就可以把要排序的数字排序出来了 不管%d后面由几个空格  最后我就把%d后面的空格全部去掉 才能正常运行 这是什么原因?我就不明白 为什么%d后面加了N个空格后在运行的时候就要多输入十个数……我这算钻牛角尖吗?真的想明白是咋回事

对了 源代码是:
#include<stdio.h>
#include<stdlib.h>
void main()
{
        int i,j,max,a[10];
        printf("please input all of numbers:\n");
        for(i=0;i<10;i++)
        {
                scanf("%d ",&a[i]);
        }
        for(j=10;j>0;j--)
        {
                for(i=1;i<j;i++)
                {
                        if(a[i-1]>a[i])
                        {
                                max=a[i-1];
                                a[i-1]=a[i];
                                a[i]=max;
                        }

                }
        }
        printf("please output all of numbers in decrease:\n");
        for(i=0;i<10;i++)
        {
                printf("%d\n",a);
        }
        system("pause");
}


[/i][/i][/i][/i][/i]
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2013-3-30 12:07:43 | 显示全部楼层
这个是scanf函数的一个特点吧。给你一个链接,上面有说明。http://www.360doc.com/content/10/1009/11/3079882_59545977.shtml
小甲鱼最新课程 -> https://ilovefishc.com
 楼主| 发表于 2013-3-30 12:35:00 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-8-4 20:50

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表