




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验三 串/串的基本操作#include stdio.h#include stdlib.h#define MAXSTRLEN 255typedef unsigned char SStringMAXSTRLEN+1;void strlength(SString S)/求字串并放到S0中int m;for(m=1;Sm!=0;m+);S0=m-1; void insert(SString S,int n,char a)/是插入的位置 a是插入的字符 strlength(S);int i;for(i=S0;i=n;i-)Si+1=Si;Sn=a;SS0+2=0;int compare(SString S,SString T)strlength(S);strlength(T);int i;for(i=1;i=S0&iTi)return 1;if(SiT0)return 1;else if(S0T0)return -1;elsereturn 0;void concat(SString T1,SString S1,SString S2)strlength(S1);strlength(S2);int i;if(S10+S20=MAXSTRLEN)/未截断for(i=1;i=S10;i+)T1i=S1i;for(i=1;i=S20;i+)T1S10+i=S2i; T1S10+S20+1=0;void clear(SString S)strlength(S);int i;for(i=1;iS0;i+)Si=0;S0=0;int SubString(SString &Sub,SString S,int pos,int len)int i;strlength(S);if(posS0|lenS0-pos+1)printf(Error!position or length is out of rangen);return 0;for(i=1;i=len;i+)Subi=Spos+i-1;Subi=0;Sub0=len;return 1;int Index(SString S,SString T,int pos)int i=pos,j=1;strlength(S);strlength(T);while(i=S0&jT0)return i-T0;else return 0;void main()/测试主程序/*SString S;printf(请输入字符串S:);scanf(%s,S+1);printf(n);printf(输入的字符串为:);printf(%s,S+1);printf(n);insert(S,2,A);printf(插入字符后的字符串为:);printf(%s,S+1);printf(n); */*SString T;printf(请输入字符串T:);scanf(%s,T+1);printf(n);int flag;flag=compare(S,T);printf(%d,flag); */ /*SString S1,S2,T1;printf(请输入字符串S1:);scanf(%s,S1+1);printf(请输入字符串S2:);scanf(%s,S2+1);concat(T1,S1,S2);printf(连接的新字符串为:);printf(%s,T1+1);printf(n);*/*SString S;printf(请输入字符串S:);scanf(%s,S+1);printf(你输入的字符串为:%sn,S+1);clear(S);printf(%sn,S+1);*/ /*SString S,Sub;int pos,len;printf(请输入字符串S:);scanf(%s,S+1);printf(请输入子串的位置:);scanf(%d,&pos);printf(请输入子串的长度:);scanf(%d,&len);if(SubString(Sub,S,pos,len)printf(n子串为:%sn,Sub+1);printf(子串的长度:%dn,Sub0);*/ SString S,T;int pos,r;printf(输入主串:);scanf(%s,S+1);printf(输入模式串:);scanf(%s,T+1);printf(请输入起始位置pos:);scanf(%d,&pos);if(r=Index(S,T,pos)printf(模式串在主串中的位置为:%dn,r);else printf(匹配失败!n);/字符串中字符频度#include Stdio.h#include stdlib.h#define MAXSTRLEN 255typedef unsigned char SStringMAXSTRLEN+1;typedef struct charcpchar zifu;int pingdu;struct charcp *next;charcp,*Linkchar;void Strlength(SString S)int i;for(i=1;Si!=0;i+);S0=i-1;void Init(Linkchar &cp)cp=(Linkchar)malloc(sizeof(charcp);cp-next=NULL;cp-zifu=0;cp-pingdu=0;void Pingdu(SString S,Linkchar &cp)int i=1;charcp *p;charcp *q;while(Si!=0)p=cp;if(p-zifu=0)p-zifu=Si;p-pingdu+;i+;continue;while(p-next!=NULL)if(p-zifu=Si)p-pingdu+; break;p=p-next;if(p-next=NULL)if(p-zifu=Si)p-pingdu+;elseq=(Linkchar)malloc(sizeof(charcp);q-zifu=Si;q-pingdu=1;q-next=NULL;p-next=q;i+;void main()Linkchar cp;Init(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 医院感染预防控制方案
- 家庭教育方式与效果评价
- 一、客户及行政管理方案
- 跨国贸易合同磋商中的环境责任与可持续发展条款
- 离婚协议书中违约金支付与执行监督合同范本
- 某私立学校校园内停车设施管理与收费合同
- 离婚双方债务承担及共同房产处理协议书模板
- SET安全协议在在线游戏支付领域的实施合同
- 网络安全风险评估保密协议范本:保障网络安全
- 婚前财产协议及离婚后子女教育资助合同
- 五年级篮球培训课件
- 护林员巡护安全知识培训课件
- 辽宁省2025年中考英语真题附答案
- 喷涂基础知识培训课件
- 2025年驻外内聘考试题库
- 中铁四局工作汇报与战略规划
- 幼儿园教师防恐防暴安全知识培训
- 中国禁毒法课件
- 浅谈机关干部身心健康
- 湖南省多测合一收费指导标准(试行)2024年版
- 企业融资培训课件
评论
0/150
提交评论