简易文本编辑器课程设计报告说明书内容摘要:

态内存释放实现删除操作。 void del() { art Art。 FILE *p。 char c[Max_Num]。 int k=0,j=0,i=0,z=0。 Art=(art)malloc(sizeof(Article))。 p=fopen(,r)。 fscanf(p,%d %d %d %d ,amp。 Artlenth,amp。 Artnumber_num,amp。 Artspace_num,amp。 Artword_num)。 Arts=(char*)malloc((Artlenth+1)*sizeof(char))。 Arts[Artlenth]=39。 \039。 fread(Arts,sizeof(char),Artlenth,p)。 printf(请输入要删除的字符串 \n)。 scanf(%s,c)。 for(i=0。 istrlen(c)。 i++)//删除后文章的字、数字、空格数目 if((c[i]=39。 z39。 amp。 amp。 c[i]=39。 a39。 )||(c[i]=39。 Z39。 amp。 amp。 c[i]39。 A39。 )) Artword_num。 else if(c[i]=39。 939。 amp。 amp。 c[i]=39。 039。 ) Artnumber_num。 else if(c[i]==39。 39。 ) Artspace_num。 else if(c[i]0) z++。 Artword_num=z/2。 k=j。 武汉理工大学《数据结构》课程设计说明书 9 i=0。 while(jstrlen(Arts))//字符串匹配 { if(c[i]==Arts[j]) { j++。 i++。 } else { i=0。 j=++k。 } if(i==strlen(c))//匹配成功,删除 { for(int n=k。 j=strlen(Arts)。 j++,n++) Arts[n]=Arts[j]。 i=0。 j=k。 } } fclose(p)。 Artlenth=strlen(Arts)。 //删除后的 Art〉 s的长度 p=fopen(,w)。 fprintf(p,%d %d %d %d %s,Artlenth,Artnumber_num,Artspace_num,Artword_num,Arts)。 printf(修改后的文章储存在当前文件下的 \n)。 fclose(p)。 free(Arts)。 free(Art)。 } 武汉理工大学《数据结构》课程设计说明书 10 5 程序实现 运行结果: 武汉理工大学《数据结构》课程设计说明书 11 武汉理工大学《数据结构》课程设计说明书 12 武汉理工大学《数据结构》课程设计说明书 13 武汉理工大学《数据结构》课程设计说明书 14 6 有关技术的讨论 由于文章需要保存,鉴于此,考虑采用文件将其保存。 不过如果采用文件,那么大多数操作都必须从文件中读取数据,会导致运行时间变长。 但是,采用文件可确保信息长期保存,在需要时便可取来使用。 由此,认为采用文件利大于弊,故采用之。 在输入操作中因为录入是以单字录入,由于不会自动生成终止符,故插入终止符。 因为 能力有限 中文标点和汉字难以区分故限定标点为英文输入。 武汉理工大学《数据结构》课程设计说明书 15 7 设计体会 通过这次课程设计,我学到了很多东西。 体验到了细心对一个编程者的重要性,和程序的规范对于程序的重要性。 课程设计综合考察了我们的学习成果,使我们可以综合运用所学知识,发现、提出、分析和解决问题,锻炼了我们的实践能力,是对我们的实际编程能力的一次训练和考察。 通过课程设计,也使我们发现了自身编程知识的欠缺,例如在此次课程设计中,我用到了很多以前几乎从未使用的关于文件的操作,在这个过程中,我将关于文件的操作又重温了一遍,加深了印象。 而在遇到问题后不能快速的找到行之有效的办法将其解决,暴露了我们的自身编程能力的不足。 总之,这次课程设计让我知道了,我们的编程能力还存在很大的不足,也明白了,课堂知识是远远不够的,我们要在不断的实践中去弥补去创新去挖掘。 武汉理工大学《数据结构》课程设计说明书 16 结束语 通过这一周的课程设计,我对《数据结构》这门课程所学内容的的理解与掌握得以加深。 同时,通过对 算法的设计 ,使得我将课程所学理论与实际操作很好地相联接在了一起。 在这次课程设计中,培养。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。