用for语句输出九九乘法表问题

来源:百度知道 编辑:UC知道 时间:2024/05/14 09:03:35
for (i=1;i<10;i++) /*第一行*/
for (j=1;j<10;j++) /*第二行*/
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);

以上的语句中小弟有个疑问,"%4d",不知道为何意思.
希望知情人士帮忙解答下!

1,你这个跟乘法口诀还差点
小小修改一下
for (i=1;i<10;i++) /*第一行*/
for (j=1;j<=i;j++) /*第二行*/
if (j==i) printf("%4d\n",i*j);/*第三行*/
else printf("%4d",i*j);

2,"%4d"并不时一楼说的,
它的意思是,
靠右对齐输出,不满4位长度用余白补齐,
这样能保证对齐样式

靠右对齐输出,没有4位长度用空白补齐,
为了保证格式一样

呵呵,楼上指正的好,谢谢,学习中