C语言实现打印九九乘法表的四种方式小结

寻技术 C/C++编程 2023年09月17日 66

第一种方法

使用嵌套循环

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

讲解

外层循环控制行数,变量i从1开始递增,直到9。这代表九九乘法表的行数,同时也表示乘法表的乘数。
内层循环控制每一行中的列数,变量j从1开始递增,直到i的值。这代表每一行中的乘数。在内层循环中,使用printf函数输出每个乘法表达式,%d表示整数的占位符,%-2d表示占位符预留两个字符的宽度,并且左对齐。循环结束后,通过printf("\n")跳到下一行,实现九九乘法表按行输出。最后,return 0表示程序正常结束。

第二种方法

使用一层循环和数学计算

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

讲解

外层循环同样控制行数,变量i从1开始递增,直到9。
内层循环同样控制每一行中的列数,变量j从1开始递增,直到9。对于每一个乘法表达式,使用if(j <= i)来判断是否应该输出,如果列数j小于等于行数i,则输出该表达式。否则,跳过该表达式不输出。在内层循环结束后,通过printf("\n")跳到下一行,实现九九乘法表按行输出。同样,return 0表示程序正常结束。

第三种方法

使用一个循环和条件判断

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

讲解

外层循环同样控制行数,变量i从1开始递增,直到9。
在内层循环中,使用 while 循环,变量 j 初始值为1,在每次循环中判断j是否小于等于i,如果是,则输出当前乘法表达式。然后,j递增1,继续进行循环,直到 j 大于 i,此时内层循环结束。在内层循环结束后,通过printf("\n")跳到下一行,实现九九乘法表按行输出。同样,return 0表示程序正常结束。

第四种方法

使用两个嵌套循环和条件判断

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

讲解

外层循环控制行数,变量 i 从 1 开始递增,直到 9。
内层循环控制列数,变量 j 从 1 开始递增,直到变量 n 的值。变量 n 在每次外层循环的最后增加 1,所以内层循环中打印的次数会逐渐增加。在内层循环中,使用 printf 函数输出每个乘法表达式,%d 表示整数的占位符,%-2d 表示占位符预留两个字符的宽度,并且左对齐。循环结束后,通过 printf("\n") 跳到下一行,实现九九乘法表按行输出。最后,return 0 表示程序正常结束。

关闭

用微信“扫一扫”