关于两个简单C语言程序的问题

来源:百度知道 编辑:UC知道 时间:2024/05/18 06:47:55
main()
{ int k,h=1;
for(;h<=5;h++)
{for(k=1;k<=5-h;k++)printf(" ");
for(k=1;k<=h*2-1;k++)printf("*");
printf("\n");}
}

main()
{ int k=1,h=1;
for(;h<=5;h++)
{for(;k<=5-h;k++)printf(" ");
for(k=1;k<=h*2-1;k++)printf("*");
printf("\n");}
}
为什么结果不同?

这个问题很容易作答,关键在于上面一个main函数是定义的int k,h=1;意思就是int k=0;int h=1;而下面的main函数是定义的int k=1,h=1;所以答案当然不同了,在C语言学习中,切记一定要养成代码规范,上面那个明显是因为代码不规范而给读者带来麻烦的三流程序写的代码。您千万不要学哦!