




已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
课程设计报告课程设计题目: 字符串的相关操作 学生姓名 专 业 班 级 指导教师 2012年 6月 24日1、 题目及要求 课程设计目的: 课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力。提高学生适应实际,实践编程的能力。 题目:字符串的相关操作 1)建立两个字符串string1和string22)编程实现字符串的连接、比较、查询string2在string1的位置、求子串、求串长二、模块图 菜单:choose1 2 3 4 5 6 7 0创建字符串显示求串长比较串串连接串定位求子串退出 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 input 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)return(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;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 (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+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,comparen); printf(5,linkn); printf(6,indexn); printf(7,substringn); printf(0,exitn); printf(/*-*/n); printf(please 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); break; 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 s2n); 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; 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)串长:同上,连接操作之后运行,求的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年大学生裁判课考试题及答案
- 2025年注册验船师资格考试(A级船舶检验法律法规)冲刺模拟试题及答案二
- 北京市门头沟区2023-2024学年七年级上学期期中考试数学试题及答案
- 2025年调酒技巧与实践应用练习题集
- 2025年教育机构行政岗位招聘笔试模拟卷与解析
- 公务员送分面试题及答案
- 云南省玉溪市师院附中2026届化学高一上期中质量检测模拟试题含解析
- 2025年邮政快递业务高级从业人员面试模拟题及案例分析
- 2025年初级的软件开发工程师考试模拟题集及答案解析
- 2025年新媒体运营师面试预测题与备考指南
- 2025年地理信息系统考试题及答案
- 江苏员额检察官考试完整版试题及答案
- 2025年中级注册安全工程师《其他安全》十年真题考点
- 翻越您的浪浪山新学期开学第一课+课件
- (2025)行政执法人员考试题库(附答案)
- 1-安全生产治本攻坚三年行动工作方案及台账模板(2024-2026年)
- CQI审核管理办法
- 反恐怖宣传课件
- 教培机构开学季活动策划方案
- 园区项目用电管理办法
- 老年护理谵妄课件
评论
0/150
提交评论