统计字符串中不同字符的个数c语言
时间: 2024-02-23 12:02:42 浏览: 87
可以使用数组来实现统计字符串中不同字符的个数,具体代码如下:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
int count[256] = {0}; // 初始化数组,每个元素都为0
int len, i, uniqueCount = 0;
printf("请输入一个字符串:");
gets(str);
len = strlen(str);
// 统计每个字符出现的次数
for (i = 0; i < len; i++) {
count[str[i]]++;
}
// 统计不同字符的个数
for (i = 0; i < 256; i++) {
if (count[i] > 0) {
uniqueCount++;
}
}
printf("不同字符的个数为:%d", uniqueCount);
return 0;
}
```
这里使用了一个长度为256的数组来统计每个字符出现的次数。最后遍历一遍数组,统计不同字符的个数即可。
相关问题
C语言统计字符串中数字字符的个数
可以使用C语言中的循环和判断语句来统计字符串中数字字符的个数。具体方法如下:
```c
#include <stdio.h>
int main() {
char str[100];
int count = 0, i;
printf("请输入一个字符串:");
scanf("%s", str);
for (i = 0; str[i] != '\0'; i++) {
if (str[i] >= '0' && str[i] <= '9') {
count++;
}
}
printf("字符串中数字字符的个数为:%d\n", count);
return 0;
}
```
这段代码首先定义了一个字符数组 `str` 和一个整型变量 `count`,用于存储输入的字符串和统计数字字符的个数。然后使用 `scanf()` 函数从标准输入中读取一个字符串。接下来使用 `for` 循环遍历字符串中的每个字符,如果字符是数字字符,则将计数器 `count` 加 1。最后输出统计结果。
希望可以帮到您!
C语言统计字符串中某个字符的个数
在C语言中,你可以使用循环结构和数组或者标准库函数`strcspn()`来统计字符串中某个字符的个数。这里我将演示两种常见方法:
**方法一:遍历数组**
```c
#include <stdio.h>
int count_char(char* str, char ch) {
int count = 0;
while (*str != '\0') { // 遍历字符串直到遇到结束符'\0'
if (*str == ch) {
count++; // 如果当前字符等于目标字符,计数加一
}
str++;
}
return count;
}
int main() {
char str[] = "Hello, World!";
char target_ch = 'o';
int result = count_char(str, target_ch);
printf("字符 '%c' 在字符串中出现了 %d 次.\n", target_ch, result);
return 0;
}
```
**方法二:使用`strcspn()`函数**
```c
#include <string.h>
int count_char_with_strcspn(char* str, char ch) {
return (strcspn(str, &ch) + 1); // 加一是因为strcspn会忽略第一个匹配字符
}
// 使用方法同上
```
在这个例子中,`count_char()`和`count_char_with_strcspn()`函数分别用于计算字符串中某个字符出现的次数。
阅读全文