c语言统计字符串中每个字符出现的次数
时间: 2023-04-24 13:00:58 浏览: 985
可以使用一个数组来记录每个字符出现的次数,数组的下标为字符的ASCII码值,初始值为。然后遍历字符串,每遇到一个字符,就将对应的数组元素加1。最后输出每个字符及其出现次数即可。
示例代码:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char str[100];
int count[256] = {}; // 用一个256大小的数组记录每个字符出现的次数,初始值为
printf("请输入一个字符串:");
gets(str);
int len = strlen(str);
for (int i = ; i < len; i++)
{
count[(int)str[i]]++; // 将对应字符的计数器加1
}
printf("每个字符出现的次数如下:\n");
for (int i = ; i < 256; i++)
{
if (count[i] > )
{
printf("%c:%d\n", i, count[i]); // 输出字符及其出现次数
}
}
return ;
}
```
相关问题
C语言统计字符串中每个字符的个数
在C语言中,你可以通过遍历字符串并使用数组或哈希表来统计每个字符的个数。这里是一个简单的示例,我们将使用一个字符计数数组:
```c
#include <stdio.h>
#include <string.h>
void count_chars(char *str) {
int char_count[256] = {0}; // 初始化一个大小为256的数组,因为ASCII码有256个字符
while (*str) { // 遍历字符串直到遇到'\0'
char_count[*str]++;
str++; // 移动指针到下一个字符
}
for (int i = 0; i < 256; i++) {
if (char_count[i]) {
printf("字符 '%c' 出现了 %d 次\n", i, char_count[i]);
}
}
}
int main() {
char input[] = "Hello, World!";
count_chars(input);
return 0;
}
```
这个程序会统计输入字符串中每个ASCII字符的数量,并打印出来。
如何用c语言统计字符串中每个字符的个数
可以使用一个数组来存储每个字符出现的次数,遍历字符串中的每个字符,将对应的数组元素加1即可。
具体实现如下:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
int count[256] = {0}; // 用一个大小为256的数组来存储每个字符的出现次数
printf("请输入一个字符串:");
scanf("%s", str);
int len = strlen(str);
for (int i = 0; i < len; i++) {
count[str[i]]++;
}
for (int i = 0; i < 256; i++) {
if (count[i] > 0) {
printf("字符 '%c' 出现了 %d 次\n", i, count[i]);
}
}
return 0;
}
```
这段代码中,我们使用了一个大小为256的数组 `count` 来存储每个字符的出现次数。在遍历字符串中的每个字符时,我们将对应的数组元素加1。最后,我们再遍历一遍数组,输出每个字符出现的次数。
需要注意的是,这段代码只能统计 ASCII 码表中的字符,即字符的取值范围为 0~255。如果要统计 Unicode 字符集中的字符,需要使用更大的数组来存储每个字符的出现次数。
阅读全文
相关推荐
















