给出 n n,请输出一个直角边长度是 n n 的数字直角三角形。所有数字都是 2 2 位组成的,如果没有 2 2 位则加上前导 0 0。c语言
时间: 2024-11-06 07:19:33 浏览: 20
在 C 语言中,你可以使用嵌套循环来打印一个 n 行的数字直角三角形,其中每个数字表示为两位数,如果没有两位数,则在前面补零。以下是一个简单的示例:
```c
#include <stdio.h>
void print_triangle(int n) {
// 循环处理每一行
for (int i = 1; i <= n; i++) {
// 计算当前行需要的总宽度
int width = (i * 2) - 1;
// 内层循环打印每一位数字
for (int j = 1; j <= width; j++) {
if (j <= i) {
printf("%02d", i * i + j); // 使用数学公式生成从 1 到 i^2+j 的数字
} else {
printf(" "); // 对齐空格
}
}
// 每行结束换行
printf("\n");
}
}
int main() {
int n;
printf("请输入直角三角形的行数(n): ");
scanf("%d", &n);
print_triangle(n);
return 0;
}
```
在这个程序中,`print_triangle` 函数首先计算每行所需的总宽度,然后通过两个嵌套循环逐个打印数字。对于每一对数字对 (i, j),它使用公式 `i*i + j` 来生成一个 2 位的数字。如果生成的数字不足两位,就使用 `%02d` 输出占位符,确保始终显示两位。
阅读全文