输入一个整数 (2~20) 表示输出的行数, 也表示组成图形“X”的正反斜线长度, 输出用“*”组成的X形图案。(10分)例: 输入: 5 输入: 6输出: 输出:
时间: 2024-10-07 16:05:33 浏览: 47
要编写一个程序来根据输入的整数输出指定行数的 "X" 形图案,你可以使用嵌套循环来控制每一行和每一列的星号(*)打印。对于每个星号,你可以检查其所在的行和列是否满足正反斜线的条件。以下是一个简单的 C 语言程序实现:
```c
#include <stdio.h>
void print_pattern(int n) {
for (int i = 0; i <= n; ++i) { // 循环从0到n,包括n,因为我们要打印n+1行
for (int j = 0; j <= n; ++j) { // 同理,j从0到n
if ((i == 0 && j == 0) || (i == 0 && j == n) || (i == n && j == 0)) { // 基本情况,边界上的星号
printf("* ");
} else if (i + j == n || i - j == n) { // 对应正斜线或反斜线
printf("* ");
} else { // 其他位置的空格
printf(" ");
}
}
printf("\n"); // 换行开始新的一行
}
}
int main() {
int input;
printf("请输入一个整数(2~20): ");
scanf("%d", &input);
// 检查输入是否在合法范围内,如果不是则提示错误并退出
if (input < 2 || input > 20) {
printf("输入值不在2到20之间,请重新输入。\n");
return 1;
}
print_pattern(input);
return 0;
}
```
运行这个程序后,按照输入的数字,它会生成相应的 "X" 形图案。例如,如果输入5,它将产生如下输出:
```
*
***
*****
*******
```
如果输入6,则输出类似这样的图案:
```
*
***
*****
*******
*********
**********
```
阅读全文