问答详情
源自:4-13 使用for循环打印9×9乘法表

为什么不能直接写j<10呢?

j<10与j<=i的区别在哪啊?写j<10出来的排列怎么跟j<=i的排列不一样呢

提问者:慕勒2992584 2016-08-14 17:25

个回答

  • 听羽
    2016-08-21 21:31:10

    排列肯定不一样的,你观察下题目中的九九乘法表,可以发现每行最后一组数相乘中,第二个数的值是与i的值相对应的,例如8*1=8 ... 8*8=64中,8*1中的8与8*8中的8是对应的,即j的值是随i的值对应变化的,i=2,那么for(j=1; j<=i; j++)这个内循环里面只打印两个组数,即2*1=2 2*2=4,当i=1内循环就打印一次,即1*1=1,以此类推; 当条件变为j<10时,无论i的值怎样变化,内循环都是根据j<10这个条件来判断打印的次数,所以每行都是九组数。

  • 我改名字了
    2016-08-14 19:26:04

    外循环一次内循环N次。外循环初值为9.,表达式二判断成立(i>=1)。此次为外循环第一次循环。

    此次循环j<10与j<=i没有区别。但是第二次外循环  i  的值是 8 。即被乘数为  8  。此题规律为乘数最大值等于被乘数,而不是常量  9  。i=被乘数。j=乘数  。result=i*j。

  • 淮安开明刘柏年
    2016-08-14 17:58:49

    你看九九乘法表,i是大数,所以j顶多与i一样大