c加加输入一个字符串和一个字符,查找并输出字符在字符串中首次出现的位置,如果没有则输出-1
时间: 2024-05-15 15:12:59 浏览: 148
下面是 C++ 的示例代码:
```cpp
#include <iostream>
#include <cstring>
using namespace std;
int main() {
char str[100];
char ch;
int pos = -1;
cout << "请输入一个字符串:" << endl;
cin.getline(str, 100);
cout << "请输入一个字符:" << endl;
cin >> ch;
for (int i = 0; i < strlen(str); i++) {
if (str[i] == ch) {
pos = i;
break;
}
}
if (pos == -1) {
cout << "字符 " << ch << " 没有在字符串中出现过!" << endl;
} else {
cout << "字符 " << ch << " 在字符串中第一次出现的位置是:" << pos << endl;
}
return 0;
}
```
首先定义了一个字符数组 `str` 和一个字符 `ch`,并且初始化 `pos` 为 -1,表示字符在字符串中未出现过。
然后通过 `cin.getline()` 函数获取用户输入的字符串,并且通过 `cin` 语句获取用户输入的字符。
接着使用 `for` 循环遍历字符串中的每一个字符,如果找到了与输入字符相同的字符,则将 `pos` 赋值为当前位置 `i`,并且结束循环。
最后根据 `pos` 的值输出对应的结果。
需要注意的是,本代码只能处理 ASCII 码字符集,如果涉及到 Unicode 字符集,需要使用更为复杂的算法来处理。
阅读全文