用指针实现C语言程序:输入1个字符串,统计字符串中每个字符出现的次数
时间: 2024-02-28 15:54:52 浏览: 306
好的,以下是使用指针实现输入一个字符串并统计每个字符出现次数的C语言程序:
```c
#include <stdio.h>
#include <string.h>
#define MAX_LEN 100
int main() {
char str[MAX_LEN];
int len, i;
int count[128] = {0}; // 用于记录每个字符出现的次数
char *p; // 指向字符串中的字符
printf("请输入一个字符串:");
scanf("%s", str);
len = strlen(str);
p = str; // 初始化指针p
// 遍历字符串中的每个字符
while (*p != '\0') {
count[(int)(*p)]++; // 对应字符出现次数加1
p++; // 指针p指向下一个字符
}
// 输出每个字符出现的次数
for (i = 0; i < 128; i++) {
if (count[i] > 0) {
printf("%c出现了%d次\n", (char)i, count[i]);
}
}
return 0;
}
```
这个程序中,我们使用一个指向字符串中的字符的指针 `p` 来遍历字符串,并用一个长度为128的整型数组 `count` 来记录每个字符出现的次数。在程序中,先使用 `scanf()` 函数读入一个字符串,然后将指针 `p` 指向该字符串的首字符,遍历整个字符串,将对应字符出现次数加1,并将指针 `p` 指向下一个字符。这里采用了 `while` 循环来遍历字符串,因为 `while` 循环可以在遇到字符串结束符 `\0` 时自动停止。最后,再遍历整个数组 `count`,输出每个字符出现的次数。
阅读全文