3、再给定的字符串中查找指定的字符。 要求: ①字符串采用直接初始化的方式处理; ②通过scanf函数读入一个任意字符; ③在字符串中查找该字符,如果存在该字符,输出该字符在字符串中的一次出现的位置,如果再给定的字符串中不存在该字符,则给出相应的说明信息。
时间: 2024-05-05 11:21:34 浏览: 104
以下是代码实现:
```c
#include <stdio.h>
#include <string.h>
#define MAX_LEN 100
int main() {
char str[MAX_LEN + 1];
char target;
int pos = -1; // 初始化为 -1,表示未找到
printf("请输入一个字符串(最多%d个字符):", MAX_LEN);
scanf("%s", str);
printf("请输入要查找的字符:");
scanf(" %c", &target); // 注意空格,避免读入上一次输入的回车符
// 在字符串中查找目标字符
int len = strlen(str);
for (int i = 0; i < len; i++) {
if (str[i] == target) {
pos = i;
break;
}
}
// 输出结果
if (pos == -1) {
printf("该字符不存在于字符串中。\n");
} else {
printf("该字符在字符串中的第%d个位置。\n", pos + 1); // 注意加1,表示第几个位置
}
return 0;
}
```
代码逻辑比较简单,就不再赘述。需要注意的是,读入字符时为了避免读入上一次输入的回车符,需要在 `%c` 前加上一个空格。
阅读全文