|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
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] |
|