下面的程序接受用户输入的整数,并生成最多 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 = 1
运行到
i = 10
。在循环的每次迭代中,都会打印
n * i
。
这里对上面的程序稍作修改,以生成一个范围内的乘法表(其中
range 也是用户输入的正整数)。
乘法表最多一个范围
#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);
如果
range 的值为负,循环将再次迭代以要求用户输入一个正数。一旦输入了正范围,我们就打印乘法表。