C语言实验报告3
更新时间:2024-03-17 15:00:01 阅读量: 综合文库 文档下载
大学本科实验报告专用纸
课程名称 数据结构试验 成绩评定 实验项目名称 文本格式化 指导教师
实验项目编号 实验项目类型 实验地点 学生姓名 学号 学院 系 专业
实验时间 年 月 日 午~ 月 日 午 温度 ℃湿度 (一) 实验目的
熟悉串类型的实现方法和文本模式匹配方法,熟悉一般文字处理软件的设计方法,较复杂问题的分解求精方法。
(二) 实验内容和要求
输入文件中含有待格式化(或成为待排版)的文本,它由多行文字组成,例如
一篇英文文章。每一行由一系列被一个或多个空格符所隔开的字所组成,任何完整的字都没被分割在两行(每行最后一个=字与下一行第一个字在逻辑上应该由空格分开),每行字符数不超过80。除了上述文本类字符外,还存在起控制作用的字符:符号\指示它后面的正文在格式化时应另起一段排放,即空一行,并在段首缩入8个字符位置。\自成一个字。
一个文本格式化程序可以处理上述输入文件,按照用户指定的版面规格重排版面:实现页内调整,分段,分页等文本处理功能,排版结果存入输出文本文件中。
[ 基本要求]:
(1) 输出文件中字与字之间只留一个空格符,即实现多余空格符的压缩。 (2) 在输出文件中,任何完整的字仍不能分隔在两行,行尾不齐没关系,但行首要对齐(即左对齐)。
(3) 如果所要求的每页页底所空行数不少于3,则将页号印在页底空行中第2行的中间位置上,否则不印。 (4) 版面要求的参数要包含:
页长(Page Length)——每页内文字(不计页号)的行数。 页宽(Page Wedth)——每行内文字所占最大字符数。 左空白(Left Margin)——每行文字前的固定格数。 头长(Heading Length)——每页页顶所空行数。 脚长(Footing Length)——每页页底所空行数(含页号行) 起始页号(Starting Page Number)——首页的页号。
(三) 主要仪器设备
仪器:计算机 实验环境:Windows 7 & win-tc
暨南大学本科实验报告专用纸(附页)
(四) 源程序
#include
int pl=20,pw=80,lm=1,hl=3,fl=3,spn=1; main() {
void operation(void); operation();
printf(\ getch(); }
void operation(void) {
FILE *fp,*pf,*panduan;
int pli=1,pwi=1,lmi=1,spni=1,i,j=0,k=0,sp1,sp2,l=0,m=0,n=0; char ch,hc;
if(!(fp=fopen(\ {
printf(\ exit(1); }
if(!(pf=fopen(\ {
printf(\ exit(1); }
if(!(panduan=fopen(\
暨南大学本科实验报告专用纸(附页)
{
printf(\ exit(1); }
fflush(stdin); ch=fgetc(fp); fflush(stdin); hc=fgetc(panduan);
while(hc!=' '&&hc!=EOF&&hc!=3344&&hc!=46&&hc!=58&&hc!=59&&hc!=63) {
fflush(stdin); hc=fgetc(panduan); m++; }
while(ch!=EOF) {
if(m==n) {
fflush(stdin); hc=fgetc(panduan); m++;
while(hc!=' '&&hc!=EOF&&hc!=33&&hc!=44&&hc!=46&&hc!=58&&hc!=59&&hc!=63) {
fflush(stdin); hc=fgetc(panduan); l++; m++; }
暨南大学本科实验报告专用纸(附页)
if((l+pwi)>pw)
{
pwi=1; pli++; fputc('\\n',pf); fputc(' ',pf); } l=0; } if(pli>=18) {
fputc('\\n',pf); for(i=0;i for(i=0;i<3;i++) fputc('\\n',pf); 暨南大学本科实验报告专用纸(附页) pli=hl+1; for(i=0;i<8+lm;i++) fputc(' ',pf); pwi=9; } if(ch=='@'&&k==0) { fputc('\\n',pf); pli++; for(i=0;i if(ch==' '&&k==0) {if(j==0) fputc(ch,pf); j=1; pwi++; } else {if(ch!='\\r'&&k==0) fputc(ch,pf); if((ch==33||ch==44||ch==46||ch==58||ch==59||ch==63)&&k==0) fputc(' ',pf); j=0; pwi++;} 暨南大学本科实验报告专用纸(附页) if(pwi==pw&&k==0) { pwi=1; pli++; fputc('\\n',pf); for(i=0;i (五) 实验步骤与调试 (1) 在计算机F盘中建立doc.txt文件,将待排版内容输入其中。 暨南大学本科实验报告专用纸(附页) (2) 运行程序。 (3) 打开F盘中生成的new.txt文件,查看排版结果。 (六) 实验结果与分析 实验结果: 输入文本按预定格式输出。 分析:程序输出正常,但尚有一些需改进的地方,例如:文本输出中,作为换段符的@本不该存在(按实验要求保留下来,减轻了程序难度)。而后,分页时,最后不足页的文本也没用分配成新的一页打上页码。最后,文本用到的参数都是预先写在程序之中,可以考虑由操作者自行输入,只需在主函数中写入相关的提示及参数输入语句。
正在阅读:
C语言实验报告303-17
2018年法宣在线答案中华人民共和国宪法·学习资料汇编12-05
城市规划原理课后习题 406-12
建设工程安全生产管理练习试题(多选题)05-18
PLC实验报告11-22
两个条例心得体会08-13
2017届辽宁省鞍山市第一中学高三上学期第二次模拟考试生物试题06-17
2013年甘肃省会计从业继续教育-新《事业单位会计制度》限时测试题答案06-12
河北省保定市高阳县2016-2017学年七年级下学期期末考试英语试卷07-01
最新版高一语文暑假作业练习03-23
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 语言
- 实验
- 报告
- 私教谈单手册
- 数字调频收音机设计毕业论文正文 - 图文
- 供求曲线题解题方略
- 电阻应变式称重传感器设计
- XX旅游拓展训练总结4篇
- 课外群文阅读的实践研究报告
- 某二级公路路面设计实例
- 2017-2022年中国智能冰箱行业分析报告(目录) - 图文
- 2019最新精选高考物理一轮复习实验增分专题14探究单摆的运动用单
- 城市防汛工作会议表态发言
- 统计学人大版课后习题答案(贾俊平、何小群、金勇进) - 图文
- 西方愿文解讲记02益西彭措堪布讲解
- 中央银行学 单选改错多选
- 最美孝心少年颁奖词大全-演讲致辞模板
- (八年级物理教案)《探究凸透镜成像的规律》教案
- 三维推广计划及必要性
- 幼儿文学作业三
- 保险业爱岗敬业演讲稿
- 建筑力学(习题答案)
- 让数学课堂小结也精彩