标题:还是for语句的问题
只看楼主
xuexuexue
Rank: 1
等 级:新手上路
帖 子:118
专家分:0
注 册:2004-7-19
 问题点数:0 回复次数:3 
还是for语句的问题
main()
{ int a[6][6],i,j;
    for(i=1;i<6;i++)               
     for(j=1;j<6;j++)               
       a[i][j]=(i/j)*(j/i);         
    for(i=1;i<6;i++)               
      {for (j=1;j<6;j++)           
          printf ("%2d",a[i][j]);
        printf ("\n");}
小弟对这种语句主要是顺序搞不清请大虾们帮帮忙:)
是不是应该这样看这个语句:
  执行第一条for语句for(i=1;i<6;i++) ,然后执行第二条for(j=1;j<6;j++) 中j<6成立则做a[i][j]=(i/j)*(j/i)然后执行j++,判断j<6成立则再执行a[i][j]=(i/j)*(j/i),真到j<6不成立路出第二条for语句,但接下来到底是继续做第一条for语句还是做第三条for语句,能解释一下具体的步骤吗?
搜索更多相关主题的帖子: for语句 printf main 
2004-07-31 13:03
jenliscott
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2004-7-22
得分:0 

你说的是对的,跳出后执行第一条FOR语句,这样写你应该明白: for(i=1;i<=6;i++) {for(j=1;j<=6;j++) {a[i][j]=(i/j)*(j/i); } } 但函数体都是简单语句(即一条),所以将{}省略!

2004-07-31 14:04
xuexuexue
Rank: 1
等 级:新手上路
帖 子:118
专家分:0
注 册:2004-7-19
得分:0 

这道题我还是没有读懂. 先做第一个for语句i<6成立,执行第二个for语句,j<6成立,然后后做a[i][j]=(i/j)*(j/i); 这时算出来是a[1][1]=1然后是返回第二个for语句执行,然后再计算 a[i][j]=(i/j)*(j/i); 依次执行的结果是a[1][2]=0,a[1][3]=0,a[1][4]=0,a[1][5]=0.真到这里j<6为假跳出第二条for语句.后面是执行第一条for 语句吗?那么判断第一条for语句中的i<6为真然后是执行 a[i][j]=(i/j)*(j/i); 语句还是执行下面的第三条语句????


C语言让我感爱到了计算机的乐趣 目前目标:程序员
2004-08-01 10:24
神vLinux飘飘
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:浙江杭州
等 级:贵宾
威 望:91
帖 子:6140
专家分:217
注 册:2004-7-17
得分:0 

先判断第一个for,再判断第二个for,当第二个for为假时,转回去再判断第一个for

只有两个for都为假时,才去执行第三条语句


淘宝杜琨
2004-08-01 11:41



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-3755-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.259888 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved