用C语言编写编写程序,打印输出如下图所示的乘法九九表: 1 2 3 4 5 6 7 8 9 - - - - - - - - - 1 2 3 4 5 6 7 8 9 2 4 6 8 10 12 14 16 18 3 6 9 12 15 18 21 24 27 4 8 12 16 20 24 28 32 36 5 10 15 20 25 30 35 40 45 6 12 18 24 30 36 42 48 54 7 14 21 28 35 42 49 56 63 8 16 24 32 40 48 56 64 72 9 18 27 36 45 54 63 72 81 **输入提示信息**: "Input n:\n" **输入数据格式**: "%d" **输出数据格式**: "%4d" 注: 1)如输入9,则打印结果为: 1 2 3 4 5 6 7 8 9 - - - - - - - - - 1 2 3 4 5 6 7 8 9 2 4 6 8 10 12 14 16 18 3 6 9 12 15 18 21 24 27 4 8 12 16 20 24 28 32 36 5 10 15 20 25 30 35 40 45 6 12 18 24 30 36 42 48 54 7 14 21 28 35 42 49 56 63 8 16 24 32 40 48 56 64 72 9 18 27 36 45 54 63 72 81 2)如输入6,则打印结果为: 1 2 3 4 5 6 - - - - - - 1 2 3 4 5 6 2 4 6 8 10 12 3 6 9 12 15 18 4 8 12 16 20 24 5 10 15 20 25 30 6 12 18 24 30 36 3)如输入4,则打印结果为: 1 2 3 4 - - - - 1 2 3 4 2 4 6 8 3 6 9 12 4 8 12 16
时间: 2023-12-29 17:04:47 浏览: 100
下面是实现该功能的 C 语言代码:
```c
#include <stdio.h>
int main() {
int n;
printf("Input n:\n");
scanf("%d", &n);
// 打印表头
printf("%4s", "");
for (int i = 1; i <= n; i++) {
printf("%4d", i);
}
printf("\n");
printf("%4s", "");
for (int i = 0; i < n; i++) {
printf("%4s", "-");
}
printf("\n");
// 打印乘法表
for (int i = 1; i <= n; i++) {
printf("%4d", i);
for (int j = 1; j <= n; j++) {
printf("%4d", i * j);
}
printf("\n");
}
return 0;
}
```
解释一下代码的逻辑:
首先读入用户输入的 n 值,即乘法表的最大值。
然后打印表头,使用 `%4d` 的格式化字符串将每个数字占据 4 个字符宽度。
接着打印分隔线,即一行横线,同样使用 `%4s` 的格式化字符串占据 4 个字符宽度。
最后使用两层循环打印乘法表,内层循环中使用 `%4d` 的格式化字符串输出每个数字。注意每行末尾要换行。
阅读全文