c语言编程编辑一个函数,在字符串S1中寻找字符串S2,如果没找到,输出 no 如果找到输入S2第一次出现的下标

主要目的是为了让自己编一个函数。... 主要目的是为了 让自己编一个函数。 展开
 我来答
lesey1234
2011-12-15 · TA获得超过355个赞
知道小有建树答主
回答量:421
采纳率:0%
帮助的人:382万
展开全部
#include <stdio.h>
#include <string.h>
#include <malloc.h>

int search(char * strSource, char * strFind)
{
int find_len=strlen(strFind);
int i=0;
int flag=0;

while( *(strSource+i) != '\0' ){
if(*(strSource+i) == *strFind){
if(strncmp(strSource+i,strFind,find_len) ==0){
flag++;
}

}

i++;
}

if(flag!=0){
printf("----找到了[%d]次---\n",flag);
}else{
printf("----没有找到---\n");
}

return 0;
}

int main()
{

char strSource[100] ="three boys have swum across three rivers for three times in three days.";
char strFind[10] = "three";

search(strSource,strFind);
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
梦醒还追
2011-12-15
知道答主
回答量:24
采纳率:0%
帮助的人:26.9万
展开全部
#include <stdio.h>
#include <string.h>

void find_str(char *str1,char *str2)
{
int i,j,k;
k = strlen(str2);
for(i = 0 ;*(str1 + i) != '\0';i ++)
{
if ( *(str1 + i) == *str2)
{
for(j = 0;j < k;j ++)
{
if(*(str1 + i +j ) != *(str2 + j))
break;
}
if (j == k)
printf("str2 first display at%d\n",i);
else
printf ("no find str2");
}
}
}

void main()
{
char s1[100],s2[10];
printf("input string s1:\n");
gets(s1);
printf("input the finding string s2:\n");
gets(s2);
find_str(s1,s2);
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
suiyue_2009
2011-12-15 · TA获得超过846个赞
知道小有建树答主
回答量:1248
采纳率:0%
帮助的人:952万
展开全部
调用函数strrch(),直接搞定,可以参考CSDN文档
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式