《C语言课设之英文词典排标准系统》由会员分享,可在线阅读,更多相关《C语言课设之英文词典排标准系统(21页珍藏版)》请在人人文库网上搜索。

1、1 / 19一种简单的英文词典排版系统摘要在英文词典排版当中,人工统计的速度很慢,且容易出现差错。本英文词典排版系统的 自动化加速了排版工作,提高工作效率本程序主要采用对零散的单词进行自动读取,然 后按单词首字母顺序讲单词保存到文档,这样的结构化非常便于程序后续的排版工作。排版具体过程涉及到自动排除重复单词与添加新单词并重新排版等问题,将于正问中详细介绍。本程序实现了所有设计要求。关键词:英文词典排版系统,结构体,排版,单词目录中文摘要I主要符号表W1 题目要求11.1. 12 需 求 分 析3 总体设计4 详细设计4.1 主函数4.2 各功能模块设计 5运行结果(附带抓图) 6总结参考文献致。

2、谢主要符号表#include stdlib.h 为 exit() 函数提供原型;#include string.h 字符串处理函数原型;#i nclude ctype.h字符处理函数原型;#define ROWS 256#define COLS 32定义 “字典”的大小:可存放 256个单词,每个单词的长度不超过31static FILE *fp。定义文件指针:内部链接,文件作用域;static char aROWSCOLS 。定义数组:内部链接,文件作用域;该数组的作用 是将文件的内容复制进来,并加以处理。因为处理数组比处理文件方便。char get_option(void)。接收用户的选项。

3、,防止误操作。若输入“。”(不包括引号) 那么将视为选项 aint b(int count)。完成选项b的作用接收新单词;void c(char *pt, int count) 。完成选项 c 的作用通过指针对数组排序,实际数 组元素位置未改变;int check(char arr, int count) 。对输入的单词进行分辨,若输入 ni hao ,将视为单 词 ni ,并且提示并剔除重复的单词;void storage(char *pt, int count) 。在程序结束之前重新排序存储数组中的单词到 文件中。1 题目要求1能输入和显示打入的单词2能分辨出单词3对重复的单词和已经输入的。

4、单词能自动排除4能按 AZ 的顺序排版5能将运行结果以文本形式存储 6具有添加新单词并重新排版的能力 7数据结构采用指针数组或二维数组。以回车键或者空格键作为单词输入结束标志, 对重复的单词自动排除可选第一张提到的查找方法,数据结构可采用指针和数组2 需求分析 运行结果以文本形式存储,因而要提供文件的输入输出操作;通过查找操作检查重 复单词;提供排序操作系统实现按 AZ 的顺序排版;提供插入操作添加新单词并重新 排版。另外通过键盘式菜单实现功能选择 。3总体设计整个系统呗设计为单词录入模块、文件存储模块和单词浏览模块。其中单词录入模 块要完成输入单词、检查是否重复、排序操作。文件存储模块把存放。

5、单词的数组中的数 据写入文件。单词浏览模块完成英文词典的输出,即文件的输出操作 。系统功能模块图:一种简单的英文词典排版系统111单词录入单词浏览单词排序删除单词单词存储添加单词4详细设计1.主函数【流程图】NY【程序】#include stdio.h #include stdlib.h #include string.h #include ctype.h #define ROWS 256 #define COLS 32 static FILE *fp 。 static char aROWSCOLS 。 char get_option(void) 。 int b(int count) 。 vo。

6、id c(char *pt, int count) 。 int check(char arr, int count) 。 void storage(char *pt, int count) 。 int n 。 /*n 全局变量 */ char wordN20 。 void menu()/* 主界面 */ */int n,w。/*变量n保存选择菜单数字,w判断输入的数字是否在功能菜单对应数字范围内doputs(tt*MENU*nn)puts(tttWelcome to djs program!nn) 。puts(tttt 1.Add new word.) 。puts(tttt 2.Browse 。

7、all the words.) 。 puts(tttt 3.Search the word.) 。puts(tttt 4.Sort the words.) 。puts(tttt 5.Order by A-z.) 。puts(tttt 6.Exit!) 。puts(nntt*n)printf(Choice your number(1-6): bb)。scanf(%d,&n) 。if(n6)/* 对选择的数字作判断 */w=1。getchar() 。else w=0 。while(w=1) 。 switch(n)case 1:add()。 break。 /* 追加模块 */ case 2:brow。

8、se()。 break 。 /* 浏览模块 */ case 3:search()。 break 。 /* 查找模块 */ case 4:sort()。 break。 /* 分类模块 */case 5:order()。 break。 /* 排序模块 */case 6:exit(0)。II* 退出 */void main()menu()。II*主函数*II2. 公共函数【程序】int load()II* 加载函数 *IIint i,count 。int start。char *ptROWS 。char ch, len。char input。if(fp=fopen(words.txt,a+)=NUL。

9、L)II* 以输出打开方式,在此前的记录被覆盖 *II printf(nCannot open file!n) 。return NULL 。 for(i=0 。 !feof(fp) 。 i+)fscanf(fp,%s,&wordi) 。fclose(fp) 。return i+1。II*返回记录个数*IIvoid save(int n)II* 保存函数,保存 n 个记录 *IIFILE *fp 。int i 。*IIif(fp=fopen(words.txt,a+)=NULL)II* 以输出打开方式,在此前的记录被覆盖 printf(nCannot open file!n) 。exit(0) 。

10、。for(i=0 。 i0)strcmp(c,wordj)。 strcmp(wordj,wordj+1)。 strcmp(wordj+1,c)。save (n)。printf(Successful!A_A.n)。printf(nNow?I.browse all 2.back)。scanf(%d,&k)。if(k=1)browse()。 else if(k=2)menu()。 2)排序模块【流程图】【程序】void order()II* 排序模块 */int aN,i,j,t。struct words。n=load()。for(i=0。 iaj)t=ai。 ai=aj。aj=t ofor(j=0。

11、。j2)w1=1。elsew1=0。while(w1=1) 。elsew2=1。 strcpy(wordi,c) 。 save(n+1)。2).backprintf(SuccessfulL_A.Nowchoose what you will do next?nt1).add anothermenu bb) 。doscanf(%d,&x) 。if(x2)w2=1 。elsew2=0。while(w2=1) 。switch(x)case 1:add()。break。case 2:menu()。break。 6)浏览(全部)模块【流程图】【程序】void browse() /* 浏览(全部)模块 *。

12、/int i,w。if(n=load()=0)/* 加载记录 */prin tf(nCa nnot ope n file!n)。exit(0)。for(i=0。 in-1。i+)prin tf(%s/n,wordi)。puts(SuccessfulL_A.Now l.back menu 2.sort)。 scanf(%d,&w)。if(w=1)menu()。else if(w=2)sort()。7)查找模块YNYN【流程图】【程序】void search。/* 查找模块 */int i,x,y。char vs20。if(n=load()=0)/* 加载记录 */prin tf(nCann ot。

13、 open file!n)。exit(0)。prin tf(E nter the word what you want to search!)。scanf(%s,vs)。/*输入要查找的单词*/for(i=0。in。i+)/*查找要修改的单词 */if(strcmp(wordi,vs)=0)*/3). nothingprintf(SuccessfulL_A.nThe word is:%sn,wordi)。 /* 找到需要修改的单词printf(What would you like to do with the word?nt1).modify 2).delrte bb)。scanf(%d,&。

14、y)。if(y=1)modify(i)。elsedel(i)。if(i=n)printf(HOHO!SorryNot found)。printf(Now.1).one more2).back 3).exit)。scanf(%d,&x)。switch(x)case 1:search()。 break。case 2:menu()。break。case 3:exit(0)。5运行结果(附带抓图)输入单词显示打入的单词能分辨出单词并对重复的单词和已经输入的单词能自动排除-lx按AZ的顺序排版|对单讦井彳諒 序; autlioi* experience hoe makemiddle progress similar 鮭要做些什么?添加新单词并重新排版将运行结果以文本形式(word.txt)存储17 / 19。

0英文基础 学c语言 词典,C语言课设之英文词典排标准系统相关推荐

  1. 零基础学浙大翁恺C语言(4):进一步的判断与循环

    零基础学C语言(4):进一步的判断与循环 逻辑类型和运算 C语言中本来没有布尔类型,关系运算的结果是0或1,就可以使if语句执行还是不执行. include <stdbool.h> 包含一 ...

  2. 中秋佳节速成C语言_老九零基础学编程系列之C语言【章节1-章节5】

    前言 现在是北京时间2019.09.13 11:16 今天是月饼节啊!祝大家月饼节快乐~ 然而~作为一个本科来自生科院的工科女 为了当C语言助教 只能? 值此佳节,凿壁偷光/勤学苦练/悬梁刺骨/孙康映 ...

  3. c语言2048代码linux,C语言2048小游戏课设(附源码).doc

    PAGE PAGE 1 C语言2048小游戏课设 项目说明 本系统基于C语言开发,适用于刚入门的C语言新手项目课设,开发软件采用VC++6.0开发,VS,DEV C++等均可运行.(书生) 项目运行截 ...

  4. C语言编程酒店房价,C语言酒店入住管理系统课设(附源码).doc

    PAGE PAGE 1 C语言酒店入住管理系统课设 项目说明 本系统基于C语言开发,适用于刚入门的C语言新手项目课设,开发软件采用VC++6.0开发,VS,DEV C++等均可运行.(书生) 项目运行 ...

  5. 零基础学浙大翁恺C语言(1):Dev C++的安装与第一个小程序

    零基础学C语言(1):Dev C++的安装与第一个小程序 在线C语言开发环境:https://clin.icourse163.org/ 本地安装Dev C++:https://sourceforge. ...

  6. 零基础学浙大翁恺C语言(2):计算

    零基础学C语言(2):计算 C语言做整数加法计算 在程序框架内输入printf("%d",12+34) ; 代表将12+34得到的整数结果要输入到%d这个位置. # include ...

  7. 第一门语言学python好_零基础学编程,哪一门语言比较适合入门?

    最近,有不少小伙伴问我,说零基础学编程,第一门语言学哪个好?有人推荐学Python,理由是Python简单,对新人友好,上手快,那Python到底适不合适新人学呢. 我今天就这个问题给大家稍微的展开一 ...

  8. 有c语言基础学python要多久-C语言是学python的基础吗?

    先说结论: 不是! 没有C语言的基础 完全可以从零开始学习Python! 两种编程语言完全不同的风格与属性,非常独立. 所以看你自己的目标是否需要学习. 推荐直接上手Python,除非你是科班学生,或 ...

  9. 语言程序推箱子课设报告_“延期不延学”第13期 | C++篇 | c++课设建议

    关于C++课程设计的一些建议 虽然现在学校还未开学,但已经正式上课了.大家需要在课程设计答辩前完成自己的C++课程设计. 一些C++基础好的同学,说不定已经完成了.学而当初只花了两天的时间就完成了一个 ...

最新文章

  1. Requested bean is currently in creation: Is there an unresolvable circular reference?
  2. 第四周课程总结及实验报告
  3. 使用Simditor和七牛上传图片
  4. 基于ZXing Android实现生成二维码图片和相机扫描二维码图片即时解码的功能
  5. java求小数高精度_浅谈Java中的高精度整数和高精度小数
  6. Java 持有对象简要笔记
  7. 8.22 NOIP模拟测试29(B) 爬山+学数数+七十和十七
  8. C. Divan and bitwise operations
  9. 憨仔游戏第一版公测发布。
  10. 1076万毕业生,面对有史以来最大规模毕业潮,麻了
  11. mysql计算三角形斜边_下图中,底边和高都是6厘米的等腰三角形,分别以高的长为直径画圆,以底的一半长为直径画两个半圆,求阴影部分...
  12. 2021年1月程序员工资统计,平均14915元
  13. 新华三的“加班事件”说明码农的时代已经过去?
  14. 百度站长平台使用教程:流量与关键词
  15. 第6章 - 多无人车系统的协同控制 --> 无人车运动原理
  16. element ui 红点_Element-ui el-tree新增和删除节点后如何刷新tree的实例
  17. Google 13周年纪 – Google 11年收购历程
  18. android显示全景图片素材,【行业应用】360°全景-如何制作一个360度全景图
  19. 易中天品三国 - 雨热闲坛
  20. C语言二级指针的第一类模型

热门文章

  1. 三菱PLC FX5u结构化4轴伺服1个机器人程序
  2. python画环形图_Python通过matplotlib画双层饼图及环形图简单示例
  3. 基于物联网技术的课程考试监考系统
  4. 1032.挖掘机技术哪家强
  5. Java在线合并word中的表格,并对其进行赋值
  6. A股全市场股票历史行情1分钟高频数据
  7. clickhouse-mysql数据同步
  8. 【樱花飘落的速度是每秒5厘米】
  9. 程序员:今年的金三银四是假的?
  10. docker学习(四)docker run用法