郁闷求,求解惑
起泡法按小到大排序,郁闷,如果a[10]在定义的时候直接赋初值,那么可以输出正确的结果,如果用scanf输入进去的话,结果就是输出一堆负值!搞不懂,求解惑
#include "stdio.h"
void main()
{
int a[10],i,j,t; //如果a[10]在这里赋初值,并且删掉以下4句代码,正常运行
printf("输入10个数字:\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;
}
for(i=0;i<10;i++)
printf("%d",a[i]);
printf("\n");
}
[解决办法]
for(i=0;i<10;i++);
改为
for(i=0;i<10;i++)
多了个冒号