编写C语言无错误却无法输出?

#include<stdio.h>
int main()
{
int j,k,l,m,n;
int a[10],g,h;
for(l=0;l<10;l++)
{
scanf("%d",&a[l]);
}
for(j=0;j<9;j++)
{
for(k=0;k=9-j;k++)
{
if(a[k]>a[k+1])
{
m=a[k];
a[k]=a[k+1];
a[k+1]=m;
}
}
}
for(n=0;n<10;n++)
{
printf("%d",a[n]);
}
return 0;
}
我这个代码没有错误为什么不能输出啊??

不是没有错误,只是没有语法上的错误,所以编译是通过了。如果是“没有错误”,那么就有输出,而且答案是正确的。
下面是修改后的程序:
#include<stdio.h>
int main()
{ int j,k,l,m,n;
int a[10],g,h;
for(l=0; l<10; l++)
{ scanf("%d",&a[l]);
}
for(j=0; j<9; j++)
{ for(k=0; k<9-j; k++) //此行有错,已改
{ if(a[k]>a[k+1])
{ m=a[k];
a[k]=a[k+1];
a[k+1]=m;
}
}
}
for(n=0; n<10; n++)
{ printf("%d ",a[n]); //此行有错,已改
}
return 0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-12-17
for(k=0;k=9-j;k++)
这句话错了啊,死循环,for()里面第二个参数一般是判断的吧比如大于小于之类的
第2个回答  2019-12-17
for(k=0;k=9-j;k++)这句写错了,应该是for(k=0;k《9-j;k++)。希望可以帮到你
第3个回答  2019-12-17
for (k = 0; k < 9 - j; k++)

printf("%d ",a[n]);
相似回答