文章目录

  • 题目描述:
  • 代码实例:

题目描述:

返回顺序串s中从第i(1《i《n)个字符开始的连续j个字符组成的子串。当参数不正确时返回一个空串

代码实例:

#include<stdio.h>
#include<string.h>//定义一个结构体数组
typedef struct {char data[6];//字符串12345一共5个数,为什么分配6个空间,原因是c语言中字符串后面自带一个/0多以多分配一个空间int length;
}SqString;//获取子串的函数
SqString SubStr(SqString s, int i, int j) {int k = 0;SqString str;str.length = 0;//定义一个空串,长度为0//不符合条件返回空串strif(i<=0 || i>s.length || j<0 || i+j-1>s.length) {return str; }//第一个数,它的下标是0,第二个数,它的下标是1,以此类推for(k = i-1 ;k<i+j-1;k++) {str.data[k-i+1] = s.data[k];}str.length = j;str.data[str.length] = '\0';//如果没有这行代码,就会有乱码的情况出现。字符串都是以\0结尾return str;
}void main() {SqString s = {"12345",5};s.length = 5;s = SubStr(s,1,3);printf("%s",s.data);
}

数据结构-求一个字符串中的某个子串(C语言)相关推荐

  1. 求一个字符串中连续出现的次数最多的子串

    求一个字符串中连续出现的次数最多的子串.例如字符串"abababc",最多连续出现的为ab,连续出现三次.要和求一个字符串中的最长重复子串区分开来,还是上面的字符串,那么最长的重复 ...

  2. 求一个字符串中连续出现次数最多的子串

    http://blog.csdn.net/imcdragon/article/details/6838565解答二 http://hi.baidu.com/icyday315/item/040aada ...

  3. 【字符串问题】求一个字符串中重复出现的最长的子串

    2013-09-14 15:34:16 用后缀数组求一个字符串中重复出现的最长的子串. 用C++中的string类可以很方便地进行操作,需将后缀数组保存在vector<string>,如下 ...

  4. 查找一个字符串中的所有子串的位置

    /***查找一个字符串中的所有子串的位置* * */function searchSubStr(str: any, subStr: any, positions: any): void {let po ...

  5. 快速求一个字符串的非空子串(不相同)的数量

    题目(求字符串的非空子串数量) 一个字符串的非空子串是指字符串中长度至少为 1 的连续的一段字符组成 的串.例如,字符串aaab 有非空子串a, b, aa, ab, aaa, aab, aaab,一 ...

  6. 求集合/字符串中的所有组合 (C语言)

    转自:http://blog.csdn.net/fanzitao/article/details/7879033 来源:http://zhedahht.blog.163.com/blog/static ...

  7. 利用指针编程实现:删除一个字符串中的所有空格 c语言,C语言必考100题解析汇报...

    1.按下述格式,从键盘输入一个整数加法表达式:操作数1+操作数2,然后计算 并输出表达式的计算结果,形式如下:操作数1+操作数2=计算结果. 2.输入两个整形数并打印,如果用户不慎输入了非法字符,那么 ...

  8. 最长不重复字符串python_Python简单实现查找一个字符串中最长不重复子串的方法...

    本文实例讲述了Python简单实现查找一个字符串中最长不重复子串的方法.,具体如下: 刚结束的一个笔试题,很简单,不多说简单贴一下具体的实现: #!usr/bin/env python #encodi ...

  9. 一个字符串中包含另一个字符串所有字符的最短子串长度?——《编程之美》最短摘要的生成的简化

    题目: 给定一个字符串及一个字符串集合A,求该字符串中包含A中所有字符的最短子串长度. 解决方案一: 最直接的方法就是,直接开始遍历:查找任意两个子串之间是否包含str2,如果包含,记录下长度,求得最 ...

最新文章

  1. stl非变易算法(二)
  2. Http Tunnel 小记
  3. 14条建议,使你的IT职业生涯更上一层楼
  4. 用matlab参数法拟合,MATLAB|曲线拟合基本介绍
  5. es6 --- 使用Symbol保护私有变量
  6. 《小学生C++趣味编程》第2课 春晓 动动脑 第1题-2018-12-12
  7. slave_exec_mode参数跳过复制异常
  8. 编译android 7.1 jdk版本,ubuntu14.04 安装 open-jdk-1.8,下载编译 android nougat 7.1.1
  9. cas 4.0 mysql 验证_在Ja-sig CAS中使用MySQL数据库进行身份验证
  10. python如何跳出函数_python如何跳出函数
  11. mdf2iso linux,MDF to ISO下载
  12. 全文专利 PDF 免费下载
  13. 编写php代码输出学号姓名,2、 编写一个简单的C++程序:通过键盘输入你的基本信息,如姓名、学号、班级,然后在屏幕上输出...
  14. 网络打印机安装教程:HP LaserJet Pro MFP M226dw,Windows解决外网无法使用打印机问题
  15. 初识HTML(四)进阶:CSS基础、常用属性
  16. 用计算机自我介绍,计算机简单的自我介绍
  17. 杰理之连接杰理蓝牙测试盒标志和后台切去蓝牙的使用【篇】
  18. CAS详解,如何理解CAS!
  19. uniapp微信小程序证件识别
  20. POJ 1061 青蛙的约会(扩展GCD求模线性方程)

热门文章

  1. Ubuntu 安装配置 MySql
  2. OverLoad与override的区别
  3. 一篇故事细细看来,关于人生、关于思想、关于自己(转载)
  4. 两级式三相光伏并网逆变器matlab/simulink仿真模型
  5. ACE_Service_Handler类的理解和使用
  6. python 输出在固定位置_python多进程/线程抢占stdoutput总是在固定位置截断上个输出?...
  7. 合并分支到master_我敢打赌!这是全网最全的 Git 分支开发规范手册
  8. 聊聊storm supervisor的启动
  9. NDArray自动求导
  10. 不使用三方包时,如何在ThinkSNS中建立优雅的用户权限管理