字符串相关操作(数据结构课程设计c语言版)

上传人:第*** 文档编号:61614361 上传时间:2018-12-06 格式:PDF 页数:17 大小:237.41KB
返回 下载 相关 举报
字符串相关操作(数据结构课程设计c语言版)_第1页
第1页 / 共17页
字符串相关操作(数据结构课程设计c语言版)_第2页
第2页 / 共17页
字符串相关操作(数据结构课程设计c语言版)_第3页
第3页 / 共17页
字符串相关操作(数据结构课程设计c语言版)_第4页
第4页 / 共17页
字符串相关操作(数据结构课程设计c语言版)_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《字符串相关操作(数据结构课程设计c语言版)》由会员分享,可在线阅读,更多相关《字符串相关操作(数据结构课程设计c语言版)(17页珍藏版)》请在金锄头文库上搜索。

1、课程设计报告课程设计报告 课程设计题目:课程设计题目: 字符串的相关操作字符串的相关操作 学生姓名学生姓名 专专业业 班班级级 指导教师指导教师 2012 年年6 月月24 日日 一、一、题目及要求题目及要求 1 课程设计目的:课程设计目的: 课程设计为学生提供了一个既动手又动脑课程设计为学生提供了一个既动手又动脑,独立独立 实践的机会,将课本上的理论知识和实际有机的结合起来实践的机会,将课本上的理论知识和实际有机的结合起来, 锻炼学生的分析解决实际问题的能力。提高学生适应实际锻炼学生的分析解决实际问题的能力。提高学生适应实际, 实践编程的能力。实践编程的能力。 2 题目:字符串的相关操作题目

2、:字符串的相关操作 1)建立两个字符串)建立两个字符串 string1 和和 string2 2) 编程实现字符串的连接编程实现字符串的连接、 比较比较、 查询查询 string2 在在 string1 的位置、求子串、求串长的位置、求子串、求串长 二、模块图二、模块图 菜单:菜单:choose 12345670 创 建 字创 建 字 符串符串 显示显示求串长求串长比较串比较串串连接串连接串定位串定位求子串求子串退出退出 创建创建 s1 和和 s2 1 4 比较比较 s1 和和 s2 5 求求s1和和s2连接后连接后 的串长的串长 定定位位 s2 在新生成在新生成 的串里的位置的串里的位置 显

3、显示示s1和和s2连接连接 后的串后的串 退出退出 求求 s1 的字串的字串 23 6 7 0 三、程序清单三、程序清单 #include #include #include #define maxlen 40 typedef 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 input the

4、 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;ichj=t1.chj; s-len=t1.len; if (t1.len + t2.lenchi=t2.chi-s-len; s-len+=t2.len; s-chs-len=0; flag=1;

5、else if (t1.lenchi=t2.chi-s-len; s-len=maxlen; s-chs-len=0; flag=0; else flag=0; return(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 (i=t.len) return(start); else return(-1); int substring(sstring *sub, sstring s, int pos,

6、int len) int i; if (poss.len | lens.len-pos) sub-len=0; return(0); else for (i=0; ichi=s.chi+pos; 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,compa

7、ren“); printf(“5,linkn“); printf(“6,indexn“); printf(“7,substringn“); printf(“0,exitn“); printf(“/*-*/n“); printf(“please choose:n“); scanf(“%d“, switch(n) case 1: printf(“create s%dn“,m+1); printf(“pleaseinputthelengthofthe s%d:n“,m+1); scanf(“%d“, strini( strcpy(sm.ch,strcreate( m+; break; case 2:

8、 printf(“which string to display:n“); scanf(“%d“, printf(“display s%dn“,i); strdisplay( break; case 3: printf(“which string to show length:n“); scanf(“%d“, printf(“thestring%dslength is:%3dn“,i,strlength(si-1); break; case 4: printf(“compare s1 to s2n“); if(strcompare(s0,s1)0) printf(“s1s2n“); else

9、if(strcompare(s0,s1)=0) printf(“s1=s2n“); else printf(“s1s2n“); break; case 5: printf(“link s1 to s2n“); strlink( break; case 6: printf(“please input pos:n“); scanf(“%d“, printf(“thepositionis in:%3dn“,strindex(s2,pos,s1); break; case 7: printf(“please input pos:n“); scanf(“%d“, printf(“please input

10、 len:n“); scanf(“%d“, strini( substring( strdisplay( break; case 0: exit(0); default:printf(“the choice is illegal! try again!n“); main() menu(); 四、四、运行结果运行结果 该菜单用的是下标标注法,即该菜单用的是下标标注法,即 0-5 表示表示 1-6 这这 6 个个 位置,截图前有操作的解释位置,截图前有操作的解释 (1)初始菜单:)初始菜单: (2)创建:创建字符串)创建:创建字符串 s1 和和 s2 (3)显示显示:这里显示这里显示 s1 和和

11、s2 连接后的串连接后的串,所以这步运行应所以这步运行应 在连接操作之后,也可以单独显示在连接操作之后,也可以单独显示 s1 和和 s2 (4)串长串长:同上同上,连接操作之后运行连接操作之后运行,求的是求的是 s1 和和 s2 连接连接 后的串长后的串长 (5)比较串:)比较串: (6)串连接:这里只执行连接操作,无显示,显示见操作串连接:这里只执行连接操作,无显示,显示见操作 【2】display (7)定位串:上面已经解释是下标标注法,这里的)定位串:上面已经解释是下标标注法,这里的 2 和和 5 位置都是从位置都是从 0 开始计位置的,这里求的字串是开始计位置的,这里求的字串是 s2 在新生成在新生成 的(合并的(合并 s1 和和 s2 后的串)串里的位置后的串)串里的位置 (8)求子串:同上,下标标注法)求子串:同上,下标标注法 四、四、小结(收获和体会)小结(收获和体会)

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

当前位置:首页 > 中学教育 > 教学课件 > 高中课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号