




已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
中国地质大学 C语言程序设计学院 工程学院专业 岩土工程班级 052052-36 学号 20051003848姓名 虞梦泽 NO.4 一种简单的英文词典排版系统的实现一、 题目要求(1) 能输入和显示所打的单词。(2) 能分辨出单词。(3) 对重复的单词和已经输入的单词能自动排除。(4) 能按A-Z的顺序排版。(5) 能将运行结果以文本形式存储。(6) 具有添加新单词并重新排版的能力。二、 需求分析 运行结果以文本方式存储,因而要提供文件的输入输出操作;通过查找操作检查重复单词;提供排序操作实现按A-Z的顺序排版;提供插入操作添加新单词并重新排版。另外通过键盘式菜单实现功能操作选择。三、 总体设计 整个系统被设计为单词录入模块、文件存储模块和单词浏览模块。其中单词录入模块要完成输入单词、检查是否重复、排序操作。文件存储模块把存放单词的数组中的数据写入文件。单词浏览模块完成英文词典的输出,即文件的输出操作/。 数据结构采用指针数组或二维数组。以回车键或空格键作为单词输入结束标志,对重复的单词自动排除可选第一章提到的查找方法,数据结构可采用指针和数组。 英文词典排版系统单词录入模块单词浏览模块文件存储模块四、 详细设计#include#include#include#define N 1000char dicN20;FILE *p;/*清屏*/void clear() system(cls);/*写入文件*/void Write( int r ) int i; p = fopen( Data.txt, w ); for( i = 0; i r; i+ ) fprintf( p, %sn, dici ); fclose(p);/*读取文件*/int Read() int r = 0; p = fopen( Data.txt, r ); while( fscanf( p, %s, dicr ) != EOF ) r+; fclose(p); Write(r); return r;/*主菜单*/void Print() printf( nn ); printf( *n ); printf( * way = 1 : append words *n ); printf( * way = 2 : lookup words *n ); printf(* way = 3 : end work *n ); printf(* way = 4 : cheak *n ); printf( *n ); printf( please choose a way = );/*字符排序*/int sort( ) int i, j, flag = 1, r; char s20; r = Read(); for( i = 1; i r & flag = 1; i+ ) flag = 0; for( j = 0; j 0 ) flag = 1; strcpy( s, dicj ); strcpy( dicj, dicj+1 ); strcpy( dicj+1, s ); Write( r ); return 0;/*检查模块*/void Cheak() int r = 0; clear(); p = fopen( Data.txt, r ); while( fscanf( p, %s, dicr ) != EOF ) printf( %s , dicr ); r+; fclose(p); Write(r); if( r = 0 )printf( there is no word in Data.txtn ); else printf( nnthere are %d words in Data.txt!n, r ); void Insert( char *d ) int i; char f20; int r = Read(); int flag = 0; clear(); for( i = 0; i r; i+ ) if( strcmp( d, dici ) = 0 ) printf( the word %s has already existedn,d ); flag = 1; break; if( flag = 0 ) printf( the word %s is successfully addedn, d ); strcpy( dicr, d ); r+; printf( nncontinue adding,please input a word;back to main menu,input 0 :n ); while( scanf( %s, f ) & ! ( f0 = 0 & f1 = 0 ) ) flag = 0; for( i = 0; i r; i+ ) if( strcmp( f, dici ) = 0 ) clear(); printf( the word %s has already existedn,d ); flag = 1; break; if( flag = 0 ) clear(); printf( the word %s is successfully addedn, f ); strcpy( dicr, f ); r+; printf( nncontinue adding,please input a word;back to main menu,input 0 :n ); Write( r ); sort(); clear(); return;/*查找已录入单词*/void Find( char *s ) char t20; int flag = 0; char f20; int r = 0, c, i; int temp; p = fopen( Data.txt, r ); clear(); while( fscanf( p, %s, t ) != EOF ) strcpy( dicr, t ); r+; temp = strcmp( s, t ); if( temp = 0 ) c = r; flag = 1; Write( r ); if( flag ) printf( %ss sequence number is %d!n, s, c ); else printf( can not find %s!n, s ); printf( nncontinue lookuping,please input a word;back to main menu,input 0 :n ); while( scanf( %s, f ) & ! ( f0 = 0 & f1 = 0 ) ) flag = 0; for( i = 0; i r; i+ ) if( strcmp( f, dici ) = 0 ) flag = 1; c = i+1; break; if( flag ) clear(); printf( %ss sequence number is %d!n, f, c ); else clear(); printf( can not find %s!n, f ); printf( nncontinue lookuping,please input a word;back to main menu,input 0 :n ); clear(); return;/*菜单选择模块*/void Work() int i, way; char d20; while( 1 ) Print(); scanf( %d, &way ); switch( way ) case 1: printf( please input a word : ); scanf( %s, d ); Insert(d ); break; case 2: printf( please input a word : ); scanf( %s, d ); Find( d ); break; case 3: printf( all the words are saved in Data.txt ! ); return; case 4: clear(); Cheak(); /*主函数*/void main() Cheak(); sort(); Work();五、 运行结果: (1)主菜单 (2)添加单词界面 (3
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 跨境电商箱包配饰品牌2025年海外市场品牌合作模式创新
- 跨境电商箱包配饰品牌2025年品牌形象塑造与传播策略
- Unit 5 Music Reading for Writing 教学设计-2024-2025学年高中英语人教版(2019)必修第二册
- 2023-2024学年小学信息技术二年级下册 同步教案 人教版
- 第二节 生态系统的结构与组成说课稿-2025-2026学年初中生物学生命科学 第二册沪教版
- 幼儿园教学教案设计:防窒息食物
- 美容院拆盲盒活动方案
- 组织多人活动方案
- 组织大型体检活动方案
- 2024年高中化学 第四章化学与自然资源的开发利用 第2节 化学与资源综合利用、环境保护说课稿 新人教版必修2
- 残值评估与定价模型-洞察阐释
- 意式轻奢软装设计
- 2025-2030年中国宠物服务行业市场深度调研及投资前景与投资策略研究报告
- 胖东来考勤管理制度
- 地质灾害风险评估与防治
- 物理实验安全培训
- 小区物业管家管理制度
- 第三届全国技能大赛竞赛-无人机驾驶(植保)选拔赛备考试题库(附答案)
- 《烹饪营养与安全》考试复习题库(含答案)
- 加快建设教育强国-2025年上半年形势与政策
- 一例急性胰腺炎患者的个案护理课件
评论
0/150
提交评论