输入两个字符串str1和str2,查找str2在str1里首次出现的位置
时间: 2024-05-01 12:16:39 浏览: 96
可以使用Python中的字符串查找函数find()来实现:
```
str1 = input("请输入字符串1:")
str2 = input("请输入字符串2:")
index = str1.find(str2)
if index == -1:
print("字符串2在字符串1中不存在")
else:
print("字符串2在字符串1中第一次出现的位置为:", index)
```
运行结果示例:
```
请输入字符串1:hello world
请输入字符串2:world
字符串2在字符串1中第一次出现的位置为: 6
```
相关问题
输入两个字符串str1和str2,查找str2在str1里首次出现的位置c++
在 C++ 中,你可以使用 `std::string` 的内置函数或者遍历的方式找到 `str2` 首次出现在 `str1` 中的位置。这里有一个简单的示例,使用线性搜索:
```cpp
#include <string>
#include <string_view> // For C++17 and later
int findSubstring(const std::string& str1, const std::string& str2) {
if (str2.empty()) {
return 0; // 如果str2为空,直接返回0
}
size_t pos = str1.find(str2);
// 返回首次出现的位置,如果找不到则返回 std::string::npos(通常等于 -1)
return pos != std::string::npos ? pos : -1;
}
// 使用示例
std::string main_str = "Hello, world!";
std::string sub_str = "world";
int position = findSubstring(main_str, sub_str);
if (position != -1) {
std::cout << "Substring found at index: " << position << std::endl;
} else {
std::cout << "Substring not found" << std::endl;
}
```
在这个例子中,`find()` 函数会在 `str1` 中查找 `str2`,并返回第一个匹配位置。如果没有找到,则返回 `std::string::npos`。
本关任务:输入两个字符串str1和str2,查找str2在str1里首次出现的位置。给出c语言代码
请参考以下代码:
```
#include <stdio.h>
#include <string.h>
int main(){
char str1[100], str2[100];
printf("请输入字符串str1:");
scanf("%s", str1);
printf("请输入字符串str2:");
scanf("%s", str2);
char *ptr = strstr(str1, str2);
if(ptr){
printf("字符串str2在字符串str1中首次出现的位置是:%d\n", ptr - str1);
}
else{
printf("字符串str2未在字符串str1中出现!\n");
}
return 0;
}
```
输入两个字符串str1和str2,程序会查找str2在str1中首次出现的位置,并输出结果。如果str2未在str1中出现,则输出提示信息。
阅读全文
相关推荐
















