C语言:编写程序实现在一个字符串中查找指定的字符,并输出指定的字符在字符串中出现的次数及位置,如果该字符串中不包含指定的字符,请输出提示信息
时间: 2024-05-11 19:17:12 浏览: 92
好的,以下是C语言的代码实现:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100], c;
int count = 0;
printf("请输入一个字符串:");
fgets(str, 100, stdin);
printf("请输入要查找的字符:");
scanf("%c", &c);
for (int i = 0; i < strlen(str); i++) {
if (str[i] == c) {
count++;
printf("%c出现的位置:%d\n", c, i);
}
}
if (count == 0) {
printf("字符串中不包含指定的字符\n");
} else {
printf("%c出现的次数:%d\n", c, count);
}
return 0;
}
```
代码思路:
1. 定义一个字符串数组 `str` 和一个字符变量 `c`,用于存储输入的字符串和待查找的字符。
2. 使用 `fgets()` 函数从标准输入中读取一个最大长度为 100 的字符串。
3. 使用 `scanf()` 函数从标准输入中读取一个字符。
4. 使用 `for` 循环遍历字符串数组 `str`,当遍历到的字符等于待查找的字符时,将计数器 `count` 加 1,并输出该字符在字符串中的位置。
5. 如果计数器 `count` 为 0,则说明字符串中不包含待查找的字符,输出提示信息;否则输出待查找的字符在字符串中出现的次数。
注意事项:
1. 使用 `fgets()` 函数读取字符串时,需要指定最大长度和读取的文件流。此处使用 `stdin` 表示从标准输入中读取字符串。
2. 使用 `scanf()` 函数读取字符时,需要使用 `%c` 格式符,并使用 `&` 取地址符获取字符变量的地址。
3. 使用 `strlen()` 函数获取字符串长度时,需要包含头文件 `string.h`。
4. 在输出字符位置时,需要使用格式控制符 `%d`,并将字符位置转换为整型。
阅读全文