- 1、本文档共15页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
程设计(文本格式化)
附件1: 学 号: 0121110340427
课 程 设 计
题 目 文本格式化 学 院 计算机科学与技术学院 专 业 计算机科学与技术 班 级 计算机1104班 姓 名 成霖 指导教师 吴利军
2013 年 6 月 17 日
题目:文本格式化
一,问题描述:
试写一个文本格式化程序可以处理一个输入文件,它按照用户指定的下列版面规格参数重排版面:实现页内调整、分段、分页等文本处理功能,排版结果存入输出文本文件中。
(1)输出文件中字与字之间只留一个空格符,即实现多余空格符的压缩。
(2)输出文件中,任何完整的字不能分割在两行,行尾可以不齐,但行首要对齐。
(3)将页号印在页底空行中第2行的中间位置上。
(4)版面要求的参数见题集p117。
(5)测试用例自己设计。
二,设计:
1, 版面要求的参数要包含:
页长(Page Length)——每页内文字(不计页号)的行数。
页宽(Page Wedth)——每行内文字所占最大字符数。
左空白(Left Margin)——每行文字前的固定格数。
头长(Heading Length)——每页页顶所空行数。
脚长(Footing Length)——每页页底所空行数(含页号行)
起始页号(Starting Page Number)——首页的页号。
2,概要设计:
1:void printOut()
{ 该函数的功能是:格式化文本文件后必要提示用户的信息说明 }
2:void writeOut(FILE * fp2,char c1)
{ 该函数的功能是:将字符输出到文本文件和屏幕 }
3:int zuokongbai(FILE * fp2)
{ 该函数的功能是:实现文本参数格式(左空白) }
4:void pageNumber(FILE * fp2,char * aIndex,int * page)
{ 该函数的功能是:输出当前页码 }
5:void out(int * columns,char * array,int * linage,FILE * fp2,int * page,int * size)
{ 该函数的功能是:判断是否输出到文本文件和屏幕 }
6:void linageFull(FILE * fp2,int * linage,int * columns,int * page)
{ 该函数的功能是:输出页首的格式(头长+左空白) }
7:void readIn(FILE * fp1,FILE * fp2)
{ 该函数是整个程序的核心,执行程序的主要逻辑判断 }
8:void main()
3,实验设计程序代码:
#includestdio.h
#includestdlib.h
#includestring.h
int (PageLength) = 56; //页长(一页最大的行数)
int PageWedth = 60; //页宽(一行最大的字符数)
int LeftMargin = 10; //左空白(一行开始输出的空格数)
int HeadingLength = 5; //头长(一页开始输出的空行数)
int FootingLength = 5; //脚长(每页最后空5行)
int StaringPageNumber = 1; //起始页号
int page = 1; //记录页数
int i = 0; //循环变量
char a[5]; //记录page的char类型
char * aIndex = a; //数组a的首地址
//函数声明(后面的函数调用了它)
void linageFull(FILE * fp2,int * linage,int * columns,int * page);
//函数1:
void printOut() //输出头文件中的所以整形变量
{
//这个函数中的参数全部来自头文件
printf(\n);
printf( 格式化文本文件结束\n);
printf(版面的参数如下:\n);
printf(页长:%d\n,PageLength);
printf(页宽:%d\n,PageWedth);
printf(左空白:%d\n,LeftMargin);
printf(头长:%d\n,HeadingLength);
printf(脚长:%d\n,FootingLength);
printf(起始页号:%d\n,StaringPageNumber);
printf(\n);
printf( 特别说明:本程序只支持英文格式化,对于中文格式化存在乱码问题。\n);
p
您可能关注的文档
- 电大政治学原理论述题总汇.doc
- 电子IC技术支持工程师任职资格标准.doc
- 电子元器件检验规范.docx
- 电大--行政管理职业技能实训平台2单机版--人力资源管理.doc
- 电子天平的使用方法及称量操作.ppt
- 电子货币的风险及防范.doc
- 电建竣工资料格式大全.doc
- 电气工程及其自动化专升本专业毕业论文.doc
- 电子科大微电子(集成电路)工艺课件第一章:绪论.ppt
- 电梯控制器的VHDL程序设计与仿真.doc
- 2025年甘肃省临夏州临夏县高三下学期4月联考数学试卷.docx
- 2025年山西省税务系统事业单位人员招聘笔试考试题库及答案解析.docx
- 2025年北海市法院书记员招聘笔试考试题库及答案解析.docx
- 2025年安顺市法院书记员招聘笔试考试题库及答案解析.docx
- 2025年张家界市辅警招聘笔试考试题库及答案解析.docx
- 2025年驻马店市网格员招聘笔试考试题库及答案解析.docx
- 2025年包头市工会系统事业单位人员招聘笔试考试题库及答案解析.docx
- 2025年鞍山市法院书记员招聘笔试考试题库及答案解析.docx
- 2025年张掖市辅警招聘笔试考试题库及答案解析.docx
- 2025年玉林市中小学(幼儿园)教师招聘笔试考试题库及答案解析.docx
文档评论(0)