如何用C语言编写一个程序来生成指定起始数字和行数的数字三角形?例如,当输入起始数字为3,行数为6时,应输出:345678 7 9 6 0 5 1 42 3 请提供相应的C代码实现。
时间: 2024-12-08 12:18:23 浏览: 14
在C语言中,我们可以使用嵌套循环来实现这个功能。下面是一个简单的示例程序,它接受用户输入的起始数字和行数,并打印出对应的数字三角形。
```c
#include <stdio.h>
void print_triangle(int start_num, int rows) {
for (int i = 0; i <= rows; ++i) { // 遍历每一行
for (int j = 0; j <= i; ++j) { // 内层循环打印当前行的数字
printf("%d ", start_num + (i - j)); // 计算每个位置的数字
}
printf("\n"); // 换行到下一行
}
}
int main() {
int start, rows;
printf("请输入起始数字(从1开始): ");
scanf("%d", &start);
printf("请输入行数: ");
scanf("%d", &rows);
print_triangle(start - 1, rows); // 减一是因为我们是从0开始计数的
return 0;
}
```
当你运行这个程序并输入起始数字3和行数6时,它将输出:
```
2 3 4 5 6 7
1 2 3 4 5
0 1 2 3
```
请注意,这里假设起始数字是从1开始的,所以在`print_triangle`函数中使用了`(start - 1)`来计算实际的数值。如果用户输入的是从0开始的起始数字,那么直接使用`start`即可。
阅读全文