字符串的相关操作(数据结构课程设计C语言版)(共17页).doc

上传人:飞****2 文档编号:6975066 上传时间:2022-02-15 格式:DOC 页数:17 大小:205.50KB
返回 下载 相关 举报
字符串的相关操作(数据结构课程设计C语言版)(共17页).doc_第1页
第1页 / 共17页
字符串的相关操作(数据结构课程设计C语言版)(共17页).doc_第2页
第2页 / 共17页
点击查看更多>>
资源描述

《字符串的相关操作(数据结构课程设计C语言版)(共17页).doc》由会员分享,可在线阅读,更多相关《字符串的相关操作(数据结构课程设计C语言版)(共17页).doc(17页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选优质文档-倾情为你奉上 课程设计报告课程设计题目: 字符串的相关操作 学生姓名 专 业 班 级 指导教师 2012年 6月 24日1、 题目及要求 课程设计目的: 课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力。提高学生适应实际,实践编程的能力。 题目:字符串的相关操作 1)建立两个字符串string1和string22)编程实现字符串的连接、比较、查询string2在string1的位置、求子串、求串长二、模块图 菜单:choose1 2 3 4 5 6 7 0创建字符串显示求串长比较串串连接串定位求子串退出

2、 1比较s1和s2求s1的字串7创建s1和s2 4 5 显示s1和s2连接后的串求s1和s2连接后的串长326定位s2在新生成的串里的位置 0退出三、程序清单#include#include#include#define maxlen 40typedef struct char chmaxlen+1; int len;sstring;void strini(sstring *s) s-len=0;char *strcreate(sstring *s,int len) if(lenmaxlen) printf(the len is illegal!n); else printf(please i

3、nput the data of the sstirng:n); s-len=len; scanf(%s,s-ch); return s-ch;void strdisplay(sstring *s) if(s-lenchs-len=0; printf(%s,s-ch); printf(n);int strcompare(sstring s, sstring t)int i;for (i=0;is.len&it.len;i+)if (s.chi!=t.chi)return(s.chi - t.chi);return(s.len - t.len);int strlength(sstring s)r

4、eturn(s.len);int strlink(sstring *s,sstring t1,sstring t2)int i,j, flag;for(j=0;jchj=t1.chj;s-len=t1.len;if (t1.len + t2.len=maxlen)for (i=t1.len; ichi=t2.chi-s-len;s-len+=t2.len; s-chs-len=0;flag=1;elseif (t1.lenmaxlen)for (i=t1.len;ichi=t2.chi-s-len;s-len=maxlen; s-chs-len=0;flag=0;elseflag=0;retu

5、rn(flag);int strindex(sstring s,int pos, sstring t)int i, j, start;if (t.len=0)return(0);start=pos;i=start;j=0;while (is.len & j=t.len)return(start);elsereturn(-1);int substring(sstring *sub, sstring s, int pos, int len)int i;if (poss.len | lens.len-pos)sub-len=0;return(0);elsefor (i=0; ichi=s.chi+p

6、os;sub-len=len; sub-chsub-len=0;return(1);void menu() int flag=1,m=0,n,i,len,pos; sstring s4; while(flag) printf(/*-*/n); printf(1,createn); printf(2,displayn); printf(3,lengthn); printf(4,comparen); printf(5,linkn); printf(6,indexn); printf(7,substringn); printf(0,exitn); printf(/*-*/n); printf(ple

7、ase choose:n); scanf(%d,&n); switch(n) case 1: printf(create s%dn,m+1); printf(please input the length of the s%d:n,m+1); scanf(%d,&len) ; strini(&sm); strcpy(sm.ch,strcreate(&sm,len); m+; break; case 2: printf(which string to display:n); scanf(%d,&i); printf(display s%dn,i); strdisplay(&si-1); brea

8、k; case 3: printf(which string to show length:n); scanf(%d,&i); printf(the string%d s length is:%3dn,i,strlength(si-1); break; case 4: printf(compare s1 to s2n); if(strcompare(s0,s1)0) printf(s1s2n); else if(strcompare(s0,s1)=0) printf(s1=s2n); else printf(s1s2n); break; case 5: printf(link s1 to s2

9、n); strlink(&s2,s0,s1); break; case 6: printf(please input pos:n); scanf(%d,&pos); printf(the position is in:%3dn,strindex(s2,pos,s1); break; case 7: printf(please input pos:n); scanf(%d,&pos); printf(please input len:n); scanf(%d,&len); strini(&s3); substring(&s3,s0,pos,len); strdisplay(&s3); break

10、; case 0: exit(0); default:printf(the choice is illegal! try again!n); main() menu();4、 运行结果 该菜单用的是下标标注法,即0-5表示1-6这6个位置,截图前有操作的解释(1)初始菜单:(2)创建:创建字符串s1和s2(3)显示:这里显示s1和s2连接后的串,所以这步运行应在连接操作之后,也可以单独显示s1和s2(4)串长:同上,连接操作之后运行,求的是s1和s2连接后的串长(5)比较串:(6) 串连接:这里只执行连接操作,无显示,显示见操作【2】display(7)定位串:上面已经解释是下标标注法,这里的2和5位置都是从0开始计位置的,这里求的字串是s2在新生成的(合并s1和s2后的串)串里的位置(8)求子串:同上,下标标注法4、 小结(收获和体会) 专心-专注-专业

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 教育教学

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁