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

为什么第二个for里改成j<=9会打出来长方形的乘法表?

#include <stdio.h>
int main()
{
    int i, j, result;
    for(i=9;i>=1;i--)
    {
        for(j=1 ;j<=i ;j++)
        {
            result=i*j;
            printf("%d*%d=%d\t",i,j,result);
        }
    printf("\n");
    }
    return 0;
}

提问者:笑田 2015-12-05 15:43

个回答

  • Virture
    2015-12-05 16:00:26
    已采纳

    i是第一个乘数,j是第二个乘数。j<=i在每个循环后i都变小了,就是第一次循环i是9,第二次就是8了,所以j就随着i的变化而没有全部显示。当你把j的范围设固定值,就是9,那就会把第一个乘数的9到1和第二个乘数的1到9都打印出来了