编写一个C语言程序,由键盘输入两个字符串(假设第一个字符串必包含第二个字符串,如第一个字符串为ABCDEF,第二个为CDE,则CDE 包含在ABCDEF中)现要求编程输出第二字符串在第一行字符串中出现的位置。(如果第二个字符串在第一个字符串中出现多次,则以最前出现的为准)
时间: 2023-12-31 22:06:57 浏览: 45
以下是一个简单的C语言程序,可以实现以上要求:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char str1[100], str2[100];
int i, j, len1, len2, pos = -1;
printf("请输入第一个字符串:");
gets(str1);
printf("请输入第二个字符串:");
gets(str2);
len1 = strlen(str1);
len2 = strlen(str2);
for (i = 0; i <= len1 - len2; i++)
{
for (j = 0; j < len2; j++)
{
if (str1[i + j] != str2[j])
break;
}
if (j == len2)
{
pos = i;
break;
}
}
if (pos == -1)
printf("第二个字符串在第一个字符串中未出现!");
else
printf("第二个字符串在第一个字符串中的位置为:%d", pos);
return 0;
}
```
程序中先定义了两个字符串数组`str1`和`str2`,分别用于存储输入的两个字符串。然后使用`strlen`函数分别计算出两个字符串的长度,接着使用两个循环遍历第一个字符串,寻找第二个字符串的位置。其中,外层循环控制第一个字符串的起始位置,内层循环用于比较两个字符串的每个字符是否相同。如果相同,则说明第二个字符串在第一个字符串中出现了,记录下此时的起始位置并跳出循环。最后根据是否找到第二个字符串,输出不同的结果。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)