用C语言使用函数gets输入一个长度小于100的字符串,统计其中每个字母(不区分大小写)出现的次数。
时间: 2023-05-19 13:02:56 浏览: 140
以下是用C语言编写的代码,可以实现输入一个长度小于100的字符串,统计其中每个字母(不区分大小写)出现的次数:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char str[100];
int count[26] = {0};
int i;
printf("请输入一个长度小于100的字符串:\n");
gets(str);
for (i = 0; str[i] != '\0'; i++) {
if (isalpha(str[i])) {
count[tolower(str[i]) - 'a']++;
}
}
printf("每个字母出现的次数如下:\n");
for (i = 0; i < 26; i++) {
if (count[i] > 0) {
printf("%c: %d\n", 'a' + i, count[i]);
}
}
return 0;
}
```
注意:由于gets函数存在安全问题,建议使用fgets函数代替。
相关问题
用c语言编写程序统计一个字符串中26个大小写字母出现的次数。
以下是使用 C 语言编写的程序,用于统计一个字符串中 26 个大小写字母出现的次数。
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
int count[26] = {0};
int len, i;
printf("请输入一个字符串:");
gets(str);
len = strlen(str);
for(i=0; i<len; i++) {
if(str[i] >= 'a' && str[i] <= 'z') {
count[str[i] - 'a']++;
}
else if(str[i] >= 'A' && str[i] <= 'Z') {
count[str[i] - 'A']++;
}
}
printf("字母出现次数如下:\n");
for(i=0; i<26; i++) {
printf("%c:%d\n", 'a'+i, count[i]);
}
return 0;
}
```
该程序首先定义了一个字符串数组 `str`,用于存储用户输入的字符串。然后定义了一个长度为 26 的整型数组 `count`,用于存储每个字母出现的次数。接着使用 `gets()` 函数获取用户输入的字符串,并使用 `strlen()` 函数获取字符串的长度。
接下来使用一个循环遍历字符串中的每个字符,如果是小写字母,则将对应位置的计数器加 1;如果是大写字母,则将对应位置的计数器加 1。最后使用一个循环遍历整型数组,输出每个字母出现的次数。
需要注意的是,该程序使用了 `gets()` 函数获取用户输入的字符串,这个函数会读取一整行字符串,包括空格和其他特殊字符。这个函数有安全性问题,可能会导致缓冲区溢出,因此在实际应用中应该使用其他安全的函数来获取用户输入的字符串,比如 `fgets()` 函数。
用c语言实现输入字符串并统计其中大小写字母数字和其他字符的个数
以下是C语言实现输入字符串并统计其中大小写字母数字和其他字符的个数的示例代码:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char str[100];
int i, upper = 0, lower = 0, digit = 0, other = 0;
printf("请输入一个字符串:");
gets(str);
for (i = 0; str[i] != '\0'; i++) {
if (isupper(str[i])) {
upper++;
} else if (islower(str[i])) {
lower++;
} else if (isdigit(str[i])) {
digit++;
} else {
other++;
}
}
printf("大写字母个数:%d\n", upper);
printf("小写字母个数:%d\n", lower);
printf("数字个数:%d\n", digit);
printf("其他字符个数:%d\n", other);
return 0;
}
```
这段代码先定义了一个字符数组 `str` 用于存储输入的字符串,以及四个整型变量 `upper`、`lower`、`digit` 和 `other` 分别用于统计大写字母、小写字母、数字和其他字符的个数。
接着使用 `gets()` 函数获取用户输入的字符串,然后通过循环遍历字符串中的每个字符,使用 `isupper()` 函数、`islower()` 函数和 `isdigit()` 函数判断字符是否为大写字母、小写字母和数字,如果是则对相应的计数器加一,否则加到 `other` 计数器中。
最后,输出各个计数器的值即可。