生成乘法表的 C 程序

在本例中,您将学习使用 C 语言生成用户输入的数字的乘法表。

要理解此示例,您应该具备以下 C 语言编程主题的知识:

下面的程序从用户那里获取一个整数输入并生成最多 10 的乘法表。

乘法表最多 10

#include <stdio.h>
int main() {
  int n, i;
  printf("Enter an integer: ");
  scanf("%d", &n);
  for (i = 1; i <= 10; ++i) {
    printf("%d * %d = %d \n", n, i, n * i);
  }
  return 0;
}

输出

Enter an integer: 9
9 * 1 = 9
9 * 2 = 18
9 * 3 = 27
9 * 4 = 36
9 * 5 = 45
9 * 6 = 54
9 * 7 = 63
9 * 8 = 72
9 * 9 = 81
9 * 10 = 90

这里,用户输入一个数字并存储在 int 变量 n 中. 然后,我们使用 for 循环将乘法表打印到 10。

for (i = 1; i <= 10; ++i) {
  printf("%d * %d = %d \n", n, i, n * i);
}

循环从 i = 1i = 10。在循环的每次迭代中,都会打印 n * i 出来。

下面是对上述程序的一些修改,以生成一个指定范围内的乘法表(其中 范围 也是用户输入的正整数)。

乘法表最多一个范围

#include <stdio.h>
int main() {

  int n, i, range;
  printf("Enter an integer: ");
  scanf("%d", &n);

  // prompt user for positive range
  do {
    printf("Enter the range (positive integer): ");
    scanf("%d", &range);
  } while (range <= 0);

  for (i = 1; i <= range; ++i) {
    printf("%d * %d = %d \n", n, i, n * i);
  }

  return 0;
}

输出

Enter an integer: 12
Enter the range (positive integer): -8
Enter the range (positive integer): 8
12 * 1 = 12 
12 * 2 = 24 
12 * 3 = 36 
12 * 4 = 48 
12 * 5 = 60 
12 * 6 = 72 
12 * 7 = 84 
12 * 8 = 96 

在这里,我们使用了一个 do...while 循环来提示用户输入正范围。

// prompt user for positive range
do {
  printf("Enter the range (positive integer): ");
  scanf("%d", &range);
} while (range <= 0);

如果值 范围为负数,循环再次迭代以要求用户输入一个正数。一旦输入了正范围,我们就打印乘法表。