用c语言编写一个程序,输入一个字符串,输出该字符串中出现次数为奇数的字符及其出现次数
时间: 2024-05-10 10:16:36 浏览: 133
输出一个字符串中每个字符出现的次数
以下是用C语言编写的程序,实现输入一个字符串,输出该字符串中出现次数为奇数的字符及其出现次数:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char str[100];
int count[256] = {0};
int i, len;
printf("请输入一个字符串:");
scanf("%s", str);
len = strlen(str);
for (i = 0; i < len; i++)
{
count[(int)str[i]]++;
}
printf("出现次数为奇数的字符及其出现次数为:\n");
for (i = 0; i < 256; i++)
{
if (count[i] % 2 == 1)
{
printf("%c:%d\n", i, count[i]);
}
}
return 0;
}
```
程序的实现思路如下:
1. 首先定义一个字符数组和一个计数数组。字符数组用于存储输入的字符串,计数数组用于统计每个字符出现的次数。
2. 然后使用 `scanf()` 函数获取用户输入的字符串,并使用 `strlen()` 函数获取字符串的长度。
3. 接下来使用一个循环遍历字符串中的每个字符,将每个字符的 ASCII 码作为计数数组的下标,对应元素的值加 1。
4. 最后再使用一个循环遍历计数数组,找到出现次数为奇数的字符,并输出该字符和其出现次数。
需要注意的是,此程序默认输入的字符串中只包含 ASCII 码表中的字符。如果输入的字符串中包含其他字符,需要根据实际情况做相应的修改。
阅读全文