当前位置: 首页 > news >正文

数据结构实验(C语言):顺序串

文章参考过网上的内容,如有侵权,请联系

#include<stdio.h>#include<stdlib.h>typedefstruct{chardata[100];//初始化串intlen;//串长}SqString;voidDispStr(SqString s){inti;if(s.len>0){for(i=0;i<s.len;i++)printf("%c",s.data[i]);printf("\n");}}voidStrAssign(SqString&str,charcstr[]){//生成一个其值等于串常亮cstr的串Tinti;for(i=0;cstr[i]!='\0';i++)str.data[i]=cstr[i];str.len=i;}SqStringSubString(SqString&Sub,SqString S,intpos,intlen1){//用Sub返回串S的第pos个字符起长度为len的子串if(pos<0||pos>S.len||len1<0||len1>S.len-pos+1){printf("ERROR");}inti=0,j=pos;while(len1--){Sub.data[i]=S.data[j];Sub.len=i+1;i++;j++;}returnSub;}intStrCompare(SqString S,SqString T){//若S>t,则返回值>0;若S=t,则返回值=0;若S<t,则返回值<0;for(inti=0;i<S.len;i++){if(S.data[i]!=T.data[i])return1;}return0;}intIndexStr(SqString S,SqString T){//t为非空串。若主串S中存在于T相等的子串//则返回第一个这样的子串的在S中的位置,否则返回0intn=S.len;intm=T.len,i=0;SqString Sub;while(i<=n-m+1){SubString(Sub,S,i,m);if(StrCompare(Sub,T)!=0)++i;elsereturni;}//if(i>0) return i; //返回子串在主串中的位置//else return 0; //S中不存在与T相等的子串}intmain(){SqString S,T,Sub1;printf("建立串S\n");StrAssign(S,"abcdefgh");printf("建立串T\n");StrAssign(T,"defg");printf("输出串S\n");DispStr(S);printf("输出串T\n");DispStr(T);printf("串S中子串T的位置\n");printf("%d",IndexStr(S,T)+1);return0;}
http://www.cnnetsun.cn/news/3713029.html

相关文章:

  • 进程互斥和进程同步
  • 逃离塔科夫终极离线训练器:30+功能解锁游戏新维度
  • 软件外包报价为什么差很多?先拆需求、工期和交付范围
  • ES6常用语法
  • 告别命令行踩坑!Hermes Windows 一键整合包,3 步搭建本地桌面 AI 自动化智能体
  • VMware Workstation 17 Pro安装Slackware 15.0完整指南
  • 计算机JAVA毕设实战-基于SpringBoot+Vue的校园流浪动物信息登记与救助管理平台 智慧校园流浪动物投喂救助与公示系统【完整源码+LW+部署说明+演示视频,全bao一条龙等】
  • 洛谷P3709 大爷的字符串题 莫队
  • 编写程序,程序设定年度试错额度,额度内可以自由开展无收益的创新尝试,不用过度担忧成本。
  • 10分钟掌握vJoy:将键盘鼠标变成专业游戏手柄的完整指南
  • 【Matlab】量子力学波函数演化仿真程序
  • 【AI大模型进阶】Autograd 自动求导:别怕,你不用自己算微积分!
  • 3 连接mysql 数据库 进行数据的存储和读取
  • Agentic AI时代数据库架构演进:从数据仓库到智能决策引擎
  • 1. 准备工作
  • 服务计算--配置云桌面遇到的坑
  • 前端打包体积优化:Tree Shaking、代码分割与按需加载的深度实践
  • Q-learning在无人机三维路径规划中的MATLAB实现
  • 三菱FX5u PLC控制4轴伺服定位系统实战解析
  • RBAC表设计
  • 技术专家如何突破职业瓶颈:从编码到协作的转变
  • Oracle的sql语句3
  • 物联网安全:SE050与PIC18F46K22硬件加密方案
  • Python串口通信实战:PySerial库应用与物联网开发
  • 3步轻松下载B站视频:大会员4K和充电专属视频离线观看指南
  • 物联网设备硬件安全方案:SE050芯片实战指南
  • 【linux】CentOS 报错:There are no enabled repos;yum repolist为0,yum list 正常,yum 安装无法使用的解决方法
  • 直流、步进、伺服电机选型指南:从原理到实战,告别选型难题
  • PUBG-Logitech压枪脚本:从零开始打造你的智能射击辅助系统
  • 破局的第一性原理