用c语言写一个给定长和宽,请输出一个长方形,并a-z按顺序填充。 输入格式: 多组数据,处理到文件尾。 每组数据输入两个整数n,m,代表长方形的宽和高,0<n,m<=20,n*m<=26。 输出格式: 请输出以字符为填充的长方形,每个图案之间空一行。 输入样例: 2 3 4 2 输出样例: ab cd ef abcd efgh
时间: 2024-03-17 09:45:29 浏览: 83
好的,以下是 C 语言代码实现:
```
#include <stdio.h>
int main() {
int n, m;
char c = 'a';
while (scanf("%d %d", &n, &m) != EOF) {
char arr[20][20];
// 填充数组
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
if (c > 'z') c = 'a';
arr[i][j] = c++;
}
}
// 输出长方形
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
printf("%c", arr[i][j]);
if (j != n - 1) printf(" ");
}
printf("\n");
}
printf("\n");
}
return 0;
}
```
代码逻辑很简单,首先读入长和宽,然后用一个字符变量 `c` 存储当前要填充的字符,从 `'a'` 开始逐个填入数组中,填满后再按照题目要求输出长方形。
需要注意的是,对于多组数据的情况,我们需要使用 `while (scanf("%d %d", &n, &m) != EOF)` 来不断读入数据,直到读到文件结尾。
阅读全文