用C++编写一段程序:输入两个字符串,验证其中一个串是否为另一个的字串。输入:输入两个字符串,每个字符串占一行,长度不超过200且不含空格。输出:若第一个串s1是第二个串s2的子串,输出(s1)is substring of (s2),否则,若第二个串s2是第一个串s1的子串,输出(s2) is substring of (s1),否则,输出 No substring
时间: 2024-04-09 09:28:42 浏览: 146
下面是用C++编写的程序,用于验证一个字符串是否为另一个字符串的子串。
```cpp
#include <iostream>
#include <string>
int main() {
std::string s1, s2;
std::getline(std::cin, s1);
std::getline(std::cin, s2);
if (s1.find(s2) != std::string::npos) {
std::cout << s2 << " is substring of " << s1 << std::endl;
} else if (s2.find(s1) != std::string::npos) {
std::cout << s1 << " is substring of " << s2 << std::endl;
} else {
std::cout << "No substring" << std::endl;
}
return 0;
}
```
请将两个字符串分别输入到程序的标准输入中的两行,然后程序将输出结果。如果第一个字符串是第二个字符串的子串,将输出 "(s1) is substring of (s2)";如果第二个字符串是第一个字符串的子串,将输出 "(s2) is substring of (s1)";如果两个字符串没有子串关系,将输出 "No substring"。
相关问题
使用java输入2个字符串判断第一个字符串是否为第二个字符串字串
在Java中,你可以通过比较两个字符串对象来判断第一个字符串是否包含第二个字符串作为子串。可以使用`String`类的`contains()`方法来完成这个任务。下面是一个简单的示例:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// 获取用户输入
System.out.println("请输入第一个字符串:");
String str1 = scanner.nextLine();
System.out.println("请输入第二个字符串:");
String str2 = scanner.nextLine();
// 检查第一个字符串是否包含第二个字符串
if (str1.contains(str2)) {
System.out.println("第一个字符串包含了第二个字符串.");
} else {
System.out.println("第一个字符串不包含第二个字符串.");
}
scanner.close(); // 关闭扫描器
}
}
```
在这个例子中,程序会提示用户输入两个字符串,然后检查`str1`是否含有`str2`作为子串。如果包含,就打印相应的消息;如果不包含,则显示另一种信息。
一个字符串字串包含多少另一个字符串c++
在C++中,你可以使用`std::string`类的成员函数`find()`来检查一个字符串是否包含另一个字符串。这个函数会在原字符串中查找子字符串首次出现的位置,如果找到则返回该位置的索引(从0开始),找不到则返回`npos`。
例如,如果你想找出字符串str1是否包含字符串str2,可以这样做:
```cpp
#include <string>
std::string str1 = "Hello, World!";
std::string str2 = "World";
size_t index = str1.find(str2);
if (index != std::string::npos) {
std::cout << "str2 is found at position " << index << std::endl;
} else {
std::cout << "str2 is not found in str1" << std::endl;
}
```
如果你想要确定子字符串出现的次数,可以使用循环或`std::count_if()`,但这通常意味着遍历整个字符串。
阅读全文
相关推荐
















