从键盘输入一个大于1小于20的正整数m,在屏幕上输出高度和宽度均为2m+1的“田”字形图案c语言
时间: 2024-02-05 11:10:22 浏览: 133
输入一个正整数,判断是不是素数(C++)
以下是实现代码:
```c
#include <stdio.h>
int main() {
int m;
printf("请输入一个大于1小于20的正整数:");
scanf("%d", &m);
if (m <= 1 || m >= 20) {
printf("输入的数不符合要求!\n");
return 0;
}
for (int i = 0; i < 2 * m + 1; i++) {
for (int j = 0; j < 2 * m + 1; j++) {
if (i == 0 || i == 2 * m || j == 0 || j == 2 * m) {
printf("*");
} else if (i == m || j == m) {
printf("+");
} else {
printf(" ");
}
}
printf("\n");
}
return 0;
}
```
解释一下代码:
首先从键盘输入一个大于1小于20的正整数m,如果不符合要求则输出错误信息并结束程序。接着使用两个嵌套的循环来输出“田”字形图案,外层循环控制行数,内层循环控制列数。在输出过程中,判断当前位置是否需要输出星号、加号或空格,从而实现“田”字形图案的绘制。最后记得换行并结束程序。
阅读全文