编写函数int index(char*s, char *t),返回字符串t在s中出现的最左边的位置,如果s中没有t则,返回-1
如键盘输入char*s=“abcdefg”;char*t=“cde”;
则index(s,t)返回2;
若输入char*t=“dcb”;则index(s,t)返回-1;
有人帮做C++么?
答案:2 悬赏:60 手机版
解决时间 2021-04-16 05:36
- 提问者网友:黑米和小志
- 2021-04-15 15:55
最佳答案
- 五星知识达人网友:傲气稳了全场
- 2021-04-15 17:12
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int index(char *s, char *t)
{
char *p = strstr(s, t);
if(!p)
return -1;
return p - s;
}
int main(int argc, char *argv[])
{
int idx;
idx = index("abcdefg", "cde");
printf("idx = %d\n", idx);
idx = index("abcdefg", "dcb");
printf("idx = %d\n", idx);
return 0;
}
全部回答
- 1楼网友:北方的南先生
- 2021-04-15 18:33
#include <iostream> #include <string.h> using namespace std;
int index(char *s, char *t) { int l1=strlen(s),l2=strlen(t); int i; for(i=0; i<(l1-l2+1); i++) { if( strncmp((s+i),t,l2) == 0 ) return i; } return -1; }
int main() { char str[100],t[100]; scanf("%s",str); scanf("%s",t); printf("%d\n",index(str,t)); return 0; }
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯