输入两个字符串,判断其中一个较短的字符串是包含在另外一个较长的字符串里面

阅读: 评论:0

输入两个字符串,判断其中一个较短的字符串是包含在另外一个较长的字符串里面

输入两个字符串,判断其中一个较短的字符串是包含在另外一个较长的字符串里面

#include <stdio.h>
#include <string.h>bool search_str(char *str1, char *str2);    //对下面子函数进行声明void main()
{char str1[20],str2[20];                 //定义两个字符串bool res;                               //定义一个bool型变量printf("输入一个较短的字符串 n");gets(str1);                             //获取str1字符串printf("输入一个较长的字符串 n");gets(str2);                             //获取str2字符串res = search_str(str1, str2);           //给res赋值函数运行结果printf("res = %d  n1为真,0为假n",res);         //因为值是0和1,所以可以用%d来表示
}
bool search_str(char str1[], char str2[])   //使用bool(布尔)来标记函数的类型,即只能返回true(1)或者false(0)两个值
{char len1,len2;                         //定义两个字符串的长度变量char i,j,k;                             //i,j两个都是循环用的变量char count = 0;                         //定义一个标记的变量 需要赋初值0char count2 = 0;len1 = strlen(str1);                    //获取str1字符串的长度len2 = strlen(str2);                    //获取str2字符串的长度for(k=0;k<(len2-len1+1);k++){	char temp[20] = {""};               //定义一个空的字符串tempstrncpy(temp, str2+k, len1);        //给temp赋予str2里面len1长度的字符串puts(temp);                         //打印temp字符串for(i=0;i<len1;i++)                 //大循每次都对tr1加一位进行比较{                                   for(j=0;j<len1;j++)             //每个小循环都把str1里面的哪一位给str2里面所有的字符进行比较,当出现相等的时候,跳出这个小循环。{if(strcmp(str1, temp) == 0)  //条件判断str1里面的字符是否与str2{                           //*指针与字符串功能是一样的也可以用字符串来代替。count = len1;                //一个标记位,每次寻找到相同字符的时候标记为加一。break;                  //标记为加一以后立刻调出此循环。}}}if(len1 == count)                   //判断len1的值是否等于count,等于则进入函数里面{count2=1;                       //count2等于1,表明已经找到与之相对应的字符串break;                          //跳出这个循环}else                                //如果len1不等于count{count2=0;                       //给count2赋值0表示没有这个字符节选,继续下一次循环,直到循环结束}}if(count2 == 1)                         //等到循环结束进行判断,count2为1则返回true{return true;	}if(count2 == 0)                         //等到循环结束进行判断,count2为0则返回false{return false;}}

本文发布于:2024-01-28 01:00:55,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/17063748653707.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23