(i=1i<10i++)
/*第一行*/
for
(j=1j<10j++)
/*第二行*/
if
(j==9)
printf("%4d\n",i*j)/*第三行*/
else
printf("%4d",i*j)
/*第四行*/
i从1--9变化,当i等于每个数字时,j都从1--9执行了一遍,j=1--8时,直接打印并不换行
printf("%4d",i*j)
,但j=9时打印换行.
这几句的作用就是打印出
九九乘法表
.
for
(i=1i<10i++)
/*第一行*/
for
(j=1j<10j++)
/*第二行*/
if
(j==9)
printf("%4d\n",i*j)/*第三行*/
else
printf("%4d",i*j)
/*第四行*/
i从1--9变化,当i等于每个数字时,j都从1--9执行了一遍,j=1--8时,直接打印并不换行
printf("%4d",i*j)
,但j=9时打印换行.
这几句的作用就是打印出九九乘法表.
for(var i = 1i <= 9i++){ //外层循环for(var j = 1j <= ij++){ //内层循环
document.write(j+"*"+i+"="+i*j+" ")//输出结果
if((i*j)<10){
document.write(" ")//输出两个空格(为了看上去整齐一点)
}
}
document.write("</br>")//输出一个换行符
}
循环流程是这样的:
第一次外循环,当i=1的时候,进入内循环,这时候j=1,所以在页面上输出1(j)*1(i)=1(i乘以j的积数)。注意,这里一定要内循环不满足条件才会进入第二次外循环,所以第二次内循环的时候j=2了(因为j++),那么它满足中间的条件j<=i吗?也就是现在的j(2)<=i(1)吗?显然条件不符合了,所以它退出内循环,执行内循环后面一句输出一个换行符,然后回到第二次外循环。
第二次外循环的时候,i=2(因为i++),进入内循环,因为是新一轮内循环,所以一开始还是j=1,输出结果为1*2=2,然后还是在内循环,这时候j=2,那么j(2)<=i(2)吗?是的。所以输出2*2=4,然后第三次内循环j=3,那么j(3)<=i(2)吗?否。所以退出内循环,执行下面输出一个换行符,进入第三层外循环。
以此类推,一直到外循环的i=10,不满足i <= 9的条件,它就不会进入内循环了,也不会执行任何 *** 作了,所以也不会输出什么10*1这种表达式。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)