打印 9×9 乘法表。核心考點:雙層嵌套循環、循環邊界控制、格式化輸出對齊。原代碼輸出為下三角倒序,這是常見變體之一。
#include <stdio.h>
void star(void);
int main() {
int i, j;
printf("**********打印9*9乘法表*************\n");
star();
for (i = 9; i > 0; i--) { // 外層倒序 9→1
for (j = 1; j <= i; j++) { // 內層 1→i
printf("%d ", j * i);
}
printf("\n");
}
star();
return 0;
}
void star(void) {
for (int i = 0; i < 36; i++) printf("*");
printf("\n");
}
************************************ 9 18 27 36 45 54 63 72 81 8 16 24 32 40 48 56 64 7 14 21 28 35 42 49 6 12 18 24 30 36 5 10 15 20 25 4 8 12 16 3 6 9 2 4 1 ************************************
void print_standard() {
for (int i = 1; i <= 9; i++) {
for (int j = 1; j <= i; j++) {
printf("%d×%d=%-3d ", j, i, i*j); // %-3d 左對齊寬度3
}
printf("\n");
}
}
1×1=1 1×2=2 2×2=4 1×3=3 2×3=6 3×3=9 ... 1×9=9 2×9=18 ... 9×9=81
void print_full_matrix() {
printf(" |");
for (int i = 1; i <= 9; i++) printf("%4d", i);
printf("\n---+----------------------------------------\n");
for (int i = 1; i <= 9; i++) {
printf("%2d |", i);
for (int j = 1; j <= 9; j++)
printf("%4d", i*j);
printf("\n");
}
}
| 格式符 | 含義 | 示例輸出 |
|---|---|---|
%d | 右對齊默認寬度 | ` 9` |
%3d | 右對齊寬度 3 | ` 9` |
%-3d | 左對齊寬度 3 | `9 ` |
%2d×%-2d=%-3d | 混合對齊表達式 | `1×9 =18 ` |