输出由*组成的三角形。指定底边长度。第一排输出*,第二排输出***,每行中间需对齐,每行的最后一个*后输出回车。 输入边长(1-80中的奇数),错误边长,输出error。 例如, 输入1,输出*回车 输入2,输出error 输入3,输出 * ***回车
时间: 2024-10-22 22:22:42 浏览: 33
要实现这个功能,你可以创建一个函数来接受用户输入的边长,然后根据输入生成并打印适当的三角形。以下是一个简单的C语言程序,符合您的要求:
```c
#include <stdio.h>
// 函数定义
void print_triangle(int sides) {
if (sides < 1 || sides % 2 == 0 || sides > 80) { // 检查输入是否合法
printf("error\n");
return;
}
for (int i = 1; i <= sides; i++) {
for (int j = 1; j <= sides - i; j++) { // 前i个空格
printf(" ");
}
for (int k = 1; k <= 2 * i - 1; k++) { // 输出星号*
printf("*");
}
printf("\n"); // 换行
}
}
int main() {
int input;
printf("请输入边长(1-80之间的奇数):");
scanf("%d", &input);
print_triangle(input);
return 0;
}
```
在这个程序中,我们首先检查输入的边长是否在给定范围内且为奇数。如果条件不满足,就输出"error"。然后使用嵌套循环来打印星号形成的三角形,外层循环控制行数,内层循环控制每一行的填充空格和星号的数量。
当你运行此程序时,它会提示你输入边长,然后按照指定规则输出相应的三角形或显示错误信息。
阅读全文