菜鸟编程练习生之<九九乘法表> 循环语句

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)

那么输出的结果为

 

菜鸟编程练习生之<九九乘法表> 循环语句

 

 没错!把用空格填充替换为用零填充

 

上一篇:SMPLR 论文笔记


下一篇:OpenGL 链式滤镜(帧缓冲离屏渲染)