c语言统计字符出现次数
时间: 2023-11-07 13:07:38 浏览: 398
可以使用数组来统计字符出现次数。具体实现如下:
```c
#include <stdio.h>
int main() {
char str[100];
int count[256] = {0}; // 初始化为0
int i;
printf("请输入一个字符串:");
gets(str);
for (i = 0; str[i] != '\0'; i++) {
count[(unsigned char)str[i]]++; // 将字符作为数组下标,出现次数加1
}
printf("字符出现次数如下:\n");
for (i = 0; i < 256; i++) {
if (count[i] != 0) {
printf("%c:%d\n", i, count[i]);
}
}
return 0;
}
```
这里使用了一个长度为256的整型数组 `count`,用来存储每个字符出现的次数。在输入字符串时,对于每个字符将其作为数组下标,对应的数组元素加1。最后遍历整个数组,输出出现次数不为0的字符及其出现次数。注意要将字符先转换为无符号字符,否则可能会出现负数下标。
相关问题
用C语言统计字符出现次数
给定一个字符串和一个字符,统计该字符在字符串中出现的次数是一个常见的问题。下面是一个用C语言实现的例子:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[80]; // 输入的字符串
char ch; // 输入的字符
int i, len, count = 0; // 初始化count
gets(str); // 输入字符串
len = strlen(str); // 获取字符串长度
ch = getchar(); // 获取字符
for (i = 0; i < len; i++) {
if (str[i] == ch) { // 如果字符相等,计数器加1
count++;
}
}
printf("%d", count); // 输出字符出现次数
return 0;
}
```
该程序中,我们使用了`gets`函数来输入字符串,`strlen`函数来获取字符串长度,`getchar`函数来输入字符。然后使用一个循环遍历字符串中的每个字符,如果字符相等,计数器加1。最后输出计数器的值即可。
用C语言统计字符出现的次数
以下是用C语言统计字符出现次数的例子:
```c
#include <stdio.h>
int main() {
int cnt[128] = {0}; // 用来统计个数。
char str[200]; // 存储字符串。
int i;
printf("请输入一个字符串:");
gets(str); // 输入字符串。
for (i = 0; str[i] != '\0'; ++i) // 遍历字符串。
cnt[str[i]]++; // 统计个数。
for (i = 0; i < 128; i++) // 遍历统计到的值。
if (cnt[i] != 0) // 如果出现过则打印值,及个数。
printf("%c:%d\n", i, cnt[i]); // 输出结果。
return 0;
}
```
该程序使用了一个长度为128的数组`cnt`来统计每个字符出现的次数,其中数组下标对应字符的ASCII码值。程序首先输入一个字符串,然后遍历字符串中的每个字符,将对应的计数器加1。最后遍历整个计数器数组,输出出现过的字符及其出现次数。
阅读全文