6-9 字符串匹配 - C/C++ 数组及字符串

分数 10

全屏浏览题目

切换布局

作者 海洋饼干叔叔

单位 重庆大学

函数findSubStr()用于从以0结尾的字符数组s中查找其子串s1的位置,如果找到,返回起始下标,否则返回-1。

int findSubStr(char s[], char s1[]);

举例:字符串'tri'在字符串'string'中的起始下标为1;在字符串'tom&jerry'中找不到子串'jack',函数应返回-1。

请定义上述findSubStr()函数,使得下述程序可以运行并产生正确的执行结果。

函数接口定义:


int findSubStr(char s[], char s1[]);

裁判测试程序样例:


#include <stdio.h> #include <string.h> #include <stdbool.h> //findSubStr()函数定义处 int main() { char s1[1000] = ""; char s2[1000] = ""; scanf("%s",s1); scanf("%s",s2); int r = findSubStr(s1,s2); if (r<0) printf("Not found."); else printf("Found \'%s\' at position %d of \'%s\'",s2,r,s1); return 0; }

输入样例:

tomHat
om

输出样例:

Found 'om' at position 1 of 'tomHat'

int findSubStr(char s[], char s1[])
{
    int i,j=0,counter=0,k;
    for(i=0;i<strlen(s);i++)
    {
        if(s[i]==s1[j]) 
        {   counter++;
            j++;
            k=i;
        }
        else 
        {   j=0;
            counter=0;
        }
        if(strlen(s1)==counter) break;
    }
    if(strlen(s1)==counter) return k-strlen(s1)+1;
    else return -1;  
}

6-9 字符串匹配 - C/C++ 数组及字符串c语言c++相关推荐

  1. c语言中二维数组中维数的计算,数组指针字符串C语言程序设计-第4章.ppt

    <数组指针字符串C语言程序设计-第4章.ppt>由会员分享,可在线阅读,更多相关<数组指针字符串C语言程序设计-第4章.ppt(132页珍藏版)>请在人人文库网上搜索. 1.程 ...

  2. android 数组赋值字符串_c语言中的字符数组与字符串

    1.字符数组的定义与初始化 字符数组的初始化,最容易理解的方式就是逐个字符赋给数组中各元素. char str[10]={ 'I',' ','a','m',' ','h','a','p','p','y ...

  3. 字符型指针,数组,字符串赋值

    一. C语言中,为什么字符串可以赋值给字符指针变量 char *p,a='5'; p=&a;                     //显然是正确的, p="abcd"; ...

  4. c语言用一维数组求字符串,c语言一维数组练习题.doc

    c语言一维数组练习题 精品文档2016全新精品资料-全新公文范文-全程指导写作 –独家原创 PAGE1 / NUMPAGES1 c语言一维数组练习题 4.1内容概述 本章主要介绍了数值数组和字符数组的 ...

  5. android 数组赋值字符串_C语言奇淫技巧,字符串的三种表示方法,不会用不是合格的程序员...

    1.在C语言中,是将字符串作为字符数组来处理的,字符串是逐个存放到数组元素中的 例如用一个一维的字符数组存放字符串"I am a boy.",如下代码: char c[12] = ...

  6. c 语言定义2维字符串数组赋值,二维数组赋值字符串 c 语言 二维字符串数组赋值问题...

    C语言中二维字符数组应该怎样赋值? c语言二维数组如何定义字符串????急... 二维字符数组的定义格式为:char 数组名[第一维大小][第二维大小]; 例如:char c[3][10]; //定义 ...

  7. c语言中指针数组赋值字符串,C语言—用结构体指针给数组赋值(结构体指针指向字符串,给字符串赋值)...

    数组定义: char acBuf[sizeof(TRANS_HEAD_S) + sizeof(USER_HEAD_S) + 4] = {0}; 结构体定义: typedef struct { int ...

  8. VB中字符串匹配的多种方式

    这段时间在移植项目的过程中,起初我想判断一个字符串中是否存在某字符(串),直接的使用方法是用instr(start,string1,string2,VB compare),但经过分析在VB中可以只用一 ...

  9. 字符串匹配 - Overview

    字符串匹配(String Matchiing)也称字符串搜索(String Searching)是字符串算法中重要的一种,是指从一个大字符串或文本中找到模式串出现的位置. 字符串匹配概念 字符串匹配问 ...

最新文章

  1. asp.net mvc 学习
  2. 基于matlab的硅晶体模型,基于Matlab的图像处理技术识别硅太阳电池的缺陷
  3. Binder相关面试总结(五):为什么Activity间传递对象需要序列化
  4. 江苏小高考计算机知识点,江苏小高考知识点
  5. linkedlist(c语言_简单实现)
  6. ActiveMQ的消息重发策略和DLQ处理
  7. WCF揭秘学习笔记(5):WF定制活动
  8. AI基础:特征工程-数字特征处理
  9. wolive-在线客服系统源码_如何搭建在线客服系统?
  10. Docker创建虚机和swarm
  11. 多线程(C++)临界区Critical Sections
  12. tomcat(2)一个简单的servlet容器
  13. 【编程题目】给你 10 分钟时间,根据上排给出十个数,在其下排填出对应的十个数...
  14. C#后台调用oracle存储过程,参数传入的是clob字段,怎样处理
  15. 全面进军javascript!
  16. 基于深度学习的人脸识别系统(Caffe+OpenCV+Dlib)【三】VGG网络进行特征提取
  17. 正则提取Swagger在线文档里面的返回实体类字段
  18. 会玩弹珠也可以拿来炫了?是的,这个技能燃爆了!
  19. Qt 获取qrc文件列表
  20. 联想启天M4350恢复BIOS密码

热门文章

  1. 50道mysql笔试题目及答案_2020年MySQL数据库面试题总结(50道题含答案解析)
  2. 2016年世界编程大赛_在2016年学习的最佳编程语言是什么?
  3. 21考研上岸吉大人工智能学院考研复习策略
  4. 数据结构 | C语言实现线性表的顺序和链式结构
  5. 如何转换为YOLO txt格式
  6. Java实现 蓝桥杯 历届试题 带分数
  7. 用代码抗议996加班:集结在github上的程序员,正在进行一场社会实验
  8. w7计算机删除图标不见了怎么办,win7小电脑图标不见了怎么办
  9. Kaggle网站流量预测任务第一名解决方案:从模型到代码详解时序预测
  10. Jacobi迭代法的matlab程序(《数值分析原理》)