运用C语言循环输出:n层三角形阵, 层数由用户输入 其中n为正数,由用户输入。
时间: 2024-10-25 20:13:51 浏览: 17
在C语言中,你可以使用嵌套循环来创建用户自定义层数的三角形数组。以下是一个简单的示例程序,它会提示用户输入层数,并打印出相应的三角形:
```c
#include <stdio.h>
void print_triangle(int rows) {
// 外层循环控制行数
for (int i = 0; i < rows; i++) {
// 内层循环控制每个字符的位置
for (int j = 0; j <= i; j++) {
// 空格填充
printf(" ");
// * 表示星号,位置随层数递增
printf("*");
}
// 每行结束前换行
printf("\n");
}
}
int main() {
int n;
printf("请输入三角形的层数(正数):");
scanf("%d", &n); // 读取用户输入
// 如果输入的是负数,这里可以添加一些错误检查
if (n <= 0) {
printf("输入的层数无效,已设置为1.\n");
n = 1;
}
print_triangle(n);
return 0;
}
```
在这个程序里,外层循环控制每一行的数量,内层循环则用于在当前行上放置星号。随着层数增加,星号的个数也会相应地递增。
相关问题
c语言怎么输入正数要求输出2*n+1行的菱形图案
在C语言中,你可以通过循环结构来创建一个菱形图案。这里是一个简单的示例,它会提示用户输入正数n,并输出对应的2*n+1行的菱形:
```c
#include <stdio.h>
// 函数声明
void printDiamond(int n);
int main() {
int n;
printf("请输入一个正数:");
scanf("%d", &n);
// 检查输入是否合法
if (n <= 0) {
printf("错误!输入必须是正整数。\n");
return 0;
}
printDiamond(n);
return 0;
}
// 菱形打印函数
void printDiamond(int n) {
for (int i = 0; i < n; i++) {
// 上半部分三角形
for (int j = 0; j <= i; j++) {
printf("* ");
}
printf("\n");
// 下半部分倒置的三角形
if (i != n - 1) {
for (int k = n - 1; k > i; k--) {
printf("* ");
}
printf("\n");
}
}
}
```
当你运行这个程序并输入一个正数,比如5,它将输出一个5行的菱形图案。
阅读全文