C 语言的问题(请大虾们帮帮忙,谢谢!!!!)

来源:百度知道 编辑:UC知道 时间:2024/05/16 19:34:34
mani()
{int i,j,a[10];
a[0]=1;
for(i=0;i<5;i++)
for(j=i;j<5;j++) *怎么 理解这个语句啊?????他和把j=0有什么区别*
a[j]=a[i]+1;
for(i=1;i<5;i++)
printf("%4d",a[i]);
printf("\n");} 把整个程序解释一下就更好了!!
你们的意思是说第二个for是循环嵌套啊,那为什么不用{}呢???这样才是正式的吗??? 书我早已看过了可还是不明白所以要请教大虾们啊,老师 们更不用说了我在上大学,而 且这个课程已经结束了。我是想考证所以还在自 学!!!

for(i=0;i<5;i++)
for(j=i;j<5;j++)
a[j]=a[i]+1; //循环体只有一条语句
这样看理解了不?是这样的i=0,j从0-4;i=1,j从1-4;i=2,j从2-4;i=3,j从3-4;i=4,j=4;

这样,整个程序意思就不难理解了吧

补充回答:循环体里有两个或两个以上分号(两条语句)才用{};像:
for(i=0;i<5;i++)
for(j=i;j<5;j++)
{
a[j]=a[i]+1;
a[i]=a[j]; //循环体有两条语句
}

main()你写错了.main函数是C语言的入口函数.程序一开始是从这里运行的
for(i=0;i<5;i++)
{
//循环体
}

是一个循环语句意思是开始I为0执行循环体里的语句.i++是i=i+1的意思就是i=0+1=1.当执行一次循环体后i变成1.再判断i是否小于5.如果成立.再执行循环体.然后i+1这时i=2了.同事判断i是否小于5.如果满足.再执行循环体.一直到i=5的时候循环体执行完毕.
建议你还是多看点书.问一下老师.这是语言最基本的东西了

我帮楼主在程序的循环体部分加了{ }
使得程序循环部分更为明了,直接,容易看懂

mani()
{
int i,j,a[10]; //定义整型变量i、j及数组a[10]
a[0]=1; //数组a中第一个变量置1
for(i=0;i<5;i++) { //外层for循环,当i<5时结束循环
for(j=i;j<5;j++) { //内层for循环,把j置为与i相等,j<5时循环结束
a[j]=a[i]+1;
}