- 1、本文档共16页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言课程设计英文排版系统的实现2C语言课程设计英文排版系统的实现2
C
语
言
课
程
设
计
英文排版系统的实现
学号:20071000697
班级:055071--04
姓名:黄露
指导老师:刘文中
前 言
一、 C语言课程设计的目的:
高级语言课程设计是学习完《高级语言程序设计》课程后进行的一次全面的综合性上机实验。其目的在于为同学提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼同学的分析解决实际问题的能力。提高学生适应实际,实践编程的能力。
二,要求一种简单的英文词典排版系统的实现
能输入和显示打入的单词。
能分辨出单词。
对重复的单词和已经输入的单词能自动排除。
能按A~Z的顺序排版。
能将运行结果以文本形式存储。
具有添加新单词并重新排版的能力。
三.构架
四。流程图
五。程序说明
程序第一次运行时,会创建一个“word.txt”(不包括引号)的文本文件,然后要求输入单词。若要退出,请不要点DOS窗口的小叉叉,输入d即可。因为程序在结束之前,对数组中的单词重新排序,并存储到文件中。
#include stdio.h---
#include stdlib.h ---为exit()函数提供原型;
#include string.h---字符串处理函数原型;
#include ctype.h---字符处理函数原型;
#define ROWS 256
#define COLS 32---定义“字典”的大小:可存放256个单词,每个单词的长度不超过31
static FILE *fp;---定义文件指针:内部链接,文件作用域;
static char a[ROWS][COLS];---定义数组:内部链接,文件作用域;该数组的作用是将文件的内容复制进来,并加以处理。因为处理数组比处理文件方便。
char get_option(void);---接收用户的选项,防止误操作。若输入“a;”(不包括引号),那么将视为选项a
int 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);---在程序结束之前重新排序存储数组中的单词到文件中。
六。程序源代码。
#include stdio.h
#include stdlib.h
#include string.h
#include ctype.h
#define ROWS 256
#define COLS 32
static FILE *fp;
static char a[ROWS][COLS];
char get_option(void);
int b(int count);
void c(char *pt[], int count);
int check(char arr[], int count);
void storage(char *pt[], int count);
int main(void)
{
int i,count;
int start;
char *pt[ROWS];
char ch, len;
char input;
if((fp=fopen(words.txt,a+))==NULL)
{
fputs(不能打开或建立文件!\n,stderr);
exit(1);
}
fseek(fp,0L,SEEK_END);
start=(int)ftell(fp)/32;
count=start;
rewind(fp);
if(fread(a,32*sizeof(char),start,fp)==0)
{
i=0;
puts(开始创建词库);
puts(请输入单词(每行一个));
puts(在新行输入END结束输入:);
while(iROWSscanf(%s, a[i])==1)
{
fflush(stdin);
if(strncmp(a[i],END,3)==0)
{
count+=i;
break;
}
i
您可能关注的文档
- C++程序设计 清华大学课件 - c++ 第9章C++程序设计 清华大学课件 - c++ 第9章.ppt
- C.1 医学装备的应急管理程序与规范 流程图C.1 医学装备的应急管理程序与规范 流程图.doc
- C.6工业管道工程C.6工业管道工程.doc
- C05 信息资源的技术手段1C05 信息资源的技术手段1.ppt
- C1 德育优先2012年下期学校工作计划C1 德育优先2012年下期学校工作计划.doc
- C24编制落实(20分)C24编制落实(20分).ppt
- C08-课堂教学的组织与管理(李志7.4)C08-课堂教学的组织与管理(李志7.4).ppt
- C2C交易模式C2C交易模式.ppt
- C5116A单柱立式车床技术协议C5116A单柱立式车床技术协议.doc
- C60_高标号混凝土施工方案C60_高标号混凝土施工方案.doc
- 2018年普通高等学校招生全国统一模拟考试理综-化学试题扫描版含答案.doc
- Unit6SunshineforallStudyskills课件-牛津译林版八年级英语下册.pptx
- Unit3After-schoolactivitiesLesson2Avisittoafarm课件冀教版(2024)英语七年级下册.pptx
- 第13课《最后一次讲演》课件-统编版语文八年级下册.pptx
- Unit2BesportybehealthyReading课件-牛津译林版(2020)高中英语.pptx
- Unit2Differentfamilies第三课时(课件)-人教PEP版(2024)英语三年级上册.pptx
- 服务业的区位选择教学课件-湘教版高中地理必修二.pptx
- 城镇化进程及其影响课件高中地理湘教版(2019).pptx
- 国家海洋权益与海洋发展战略课件高一地理中图版必修2.pptx
- 工程变更管理细则.doc
文档评论(0)