用c语言 定义一个二维字符数组,把字母a-z和A-Z存储到该数组中,并遍历展示
时间: 2024-09-19 16:16:51 浏览: 81
在C语言中,我们可以使用`char`类型的二维数组来存储大写字母和小写字母。这里是一个简单的示例:
```c
#include <stdio.h>
#define ROWS 5 // 数组行数
#define COLS 50 // 每行字母数
// 定义二维字符数组
char alphabet[ROWS][COLS] = {
{'A', 'B', 'C', 'D', 'E', ..., 'Z'},
{'a', 'b', 'c', 'd', 'e', ..., 'z'}
};
int main() {
int i, j;
// 遍历并打印数组
for (i = 0; i < ROWS; i++) {
for (j = 0; j < COLS; j++) {
printf("%c ", alphabet[i][j]); // 如果需要换行,可以在这里加上 '\n'
}
printf("\n"); // 每行结束后换行
}
return 0;
}
```
在这个例子中,我们创建了一个5x50大小的二维数组,分别存放了大写字母和小写字母。注意实际运行中字母'A'至'Z'以及'a'至'z'需要填充完整,这里是省略的部分。
相关问题
在C语言中如何将二维字符数组中的大写字母改为小写
在C语言中,你可以遍历二维字符数组,并使用ASCII码特性来转换大写字母为小写字母。ASCII码规定,大写字母比对应的小写字母的ASCII值小32。下面是一个简单的示例:
```c
#include <ctype.h> // 包含ctype.h头文件,包含tolower函数
void convert_to_lowercase(char arr[][SIZE], int rows) {
for (int i = 0; i < rows; i++) {
for (int j = 0; arr[i][j] != '\0'; j++) { // 遍历每一行
if (isupper(arr[i][j])) { // 检查是否为大写字母
arr[i][j] = tolower(arr[i][j]); // 转换为小写
}
}
}
}
// 使用示例
char my_array[ROWS][COLS];
convert_to_lowercase(my_array, ROWS);
```
这个`convert_to_lowercase`函数会接收一个二维字符数组`arr`和它的行数`rows`作为参数,然后逐个检查并转换大写字母。
C语言,统计二维字符数组中字母,数字,空格,其他字符的个数
可以使用一个循环遍历二维字符数组中的每一个字符,然后使用if-else语句进行分类统计。
具体代码如下:
```c
#include <stdio.h>
int main() {
char arr[3][3] = {
{'A', '1', ' ', '&'},
{'b', 'C', '2', '('},
{'d', 'E', ' ', '?'}
};
int letter_count = 0, digit_count = 0, space_count = 0, other_count = 0;
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
if (arr[i][j] >= 'a' && arr[i][j] <= 'z' || arr[i][j] >= 'A' && arr[i][j] <= 'Z') {
letter_count++;
} else if (arr[i][j] >= '0' && arr[i][j] <= '9') {
digit_count++;
} else if (arr[i][j] == ' ') {
space_count++;
} else {
other_count++;
}
}
}
printf("Letter count: %d\n", letter_count);
printf("Digit count: %d\n", digit_count);
printf("Space count: %d\n", space_count);
printf("Other count: %d\n", other_count);
return 0;
}
```
输出结果为:
```
Letter count: 6
Digit count: 2
Space count: 2
Other count: 4
```
阅读全文