用C语言编程:输入若干行由英文字母和其他符号组成的字符串,求这些字符串中包含了几个不同的英文字母。 当输入字符串为end时结束输入,且不统计end中的英文字母。
时间: 2023-02-06 13:53:18 浏览: 136
以下是用 C 语言编写的程序示例,该程序可以求出输入的若干行字符串中包含了几个不同的英文字母:
```
#include <stdio.h>
#include <string.h>
#define MAX_LEN 100 // 字符串的最大长度
int main() {
char str[MAX_LEN]; // 存储输入的字符串
int count[26] = {0}; // 存储每个字母出现的次数
int num_diff_letters = 0; // 存储不同的字母的数量
while (1) {
// 读入一行字符串
scanf("%s", str);
// 如果读入的字符串是 "end",则退出循环
if (strcmp(str, "end") == 0) {
break;
}
// 遍历字符串中的每个字符
for (int i = 0; i < strlen(str); i++) {
// 如果当前字符是英文字母,则将对应的计数器加 1
if (str[i] >= 'a' && str[i] <= 'z') {
count[str[i] - 'a']++;
} else if (str[i] >= 'A' && str[i] <= 'Z') {
count[str[i] - 'A']++;
}
}
}
// 遍历计数器数组,统计不同的字母的数量
for (int i = 0; i < 26; i++) {
if (count[i] > 0) {
num_diff_letters++;
}
}
// 输出结果
printf("不同的字母的数量为:%d\n", num_diff_letters);
return 0;
}
```
该程序使用了一个名为 `count` 的数组来存储每个字母出现的次数,使用一个名为 `num_diff_letters` 的变量来存储不