int a,b;
for (a = 1;a <= 9;a++)
{
for (b = 1;b <= a;b++)
{
printf("%d*%d=%d ", a,b,a * b);
}
printf("\n"); 每一行执行完换行
}
输出的结果可能令人有点不满意
你会发现往下走没有对齐
原因:积有一位数还有两位数导致排列发生错乱
优化方案
int a,b;
for (a = 1;a <= 9;a++)
{
for (b = 1;b <= a;b++)
{
printf("%d*%d=%2d ", a,b,a * b); 得出的积用2d的形式原因是:结果显示两位数默认右对齐,积如果是个位数那就用空格填充
}
printf("\n");
}
补充一点:
如果把 printf("%d*%d=%2d ", a,b,a * b) 改为 printf("%d*%d=%02d ", a,b,a * b)
那么输出的结果为
没错!把用空格填充替换为用零填充