用c语言统计一串字符英文和数字的出现次数
时间: 2024-05-08 12:22:20 浏览: 50
可以使用一个数组来记录每个字符出现的次数,遍历字符串并判断每个字符是不是数字或英文字符,如果是则将相应字符在数组中的计数器加一。以下是示例代码:
```c
#include <stdio.h>
#include <ctype.h>
#define NUM_CHARS 128
int main() {
int counts[NUM_CHARS] = {0};
char str[1000];
printf("Enter a string: ");
fgets(str, 1000, stdin);
for (int i = 0; str[i] != '\0'; i++) {
if (isalnum(str[i])) {
counts[(int)str[i]]++;
}
}
printf("Character counts:\n");
for (int i = 0; i < NUM_CHARS; i++) {
if (counts[i] > 0) {
printf("%c: %d\n", i, counts[i]);
}
}
return 0;
}
```
这个程序使用了 `ctype.h` 中的 `isalnum` 函数来判断字符是否为数字或英文字符,使用了一个大小为 128 的数组来记录每个字符出现的次数,然后输出每个字符出现的次数。
相关问题
用C语言统计不同数字字符出现次数
你好,我可以回答这个问题。使用 C 语言可以通过遍历字符串中的每个字符,判断是否为数字字符,然后使用数组记录每个数字字符出现的次数。具体实现可以参考以下代码:
```
#include <stdio.h>
int main() {
char str[100];
int count[10] = {}; // 数字字符出现次数数组,初始化为
printf("请输入一个字符串:");
scanf("%s", str);
for (int i = ; str[i] != '\'; i++) {
if (str[i] >= '' && str[i] <= '9') {
count[str[i] - '']++; // 数字字符出现次数加 1
}
}
printf("不同数字字符出现次数如下:\n");
for (int i = ; i < 10; i++) {
printf("%d: %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字符的计数,因为ASCII码有256个可能值
int len = strlen(str);
for (int i = 0; i < len; i++) {
if (str[i] >= 'a' && str[i] <= 'z') { // 对于小写字母
char_count[str[i] - 'a']++;
} else if (str[i] >= 'A' && str[i] <= 'Z') { // 对于大写字母
char_count[str[i] - 'A']++;
} else if (str[i] >= '0' && str[i] <= '9') { // 对于数字
char_count[str[i] - '0']++;
} else { // 其他字符如空格、标点等
char_count[str[i]]++; // 直接累加其他非字母数字字符
}
}
// 输出每个字符及其出现次数
for (int i = 0; i < 256; i++) {
if (char_count[i] > 0) {
printf("'%c': %d times\n", i + 'a', char_count[i]); // 输出小写字母
printf("'%c': %d times\n", i + 'A', char_count[i]); // 输出大写字母
}
}
}
int main() {
char str[] = "Hello, World! 123";
count_chars(str);
return 0;
}
```
在这个程序中,`count_chars` 函数遍历输入的字符串,根据字符的ASCII值更新数组 `char_count` 的相应元素。然后在主函数中调用这个函数,并打印出每个字符及其出现次数。
阅读全文