HUNANUNIVERSITY
程序设计训练
文本分栏程序
报
告
学生姓名学生学号专业班级指导老师
2012615至2012710
1
f一程序设计目的
1.掌握结构化程序设计的基本思想;
2.熟练掌握结构以及指针的设计和应用;3.熟练掌握文件的存取方法;4.了解综合系统设计的基本原理;5.掌握C语言程序的综合应用。
二程序设计任务内容
分栏程序是对指定的源文件分栏、加行号显示在屏幕上(如图1所示),并保存为新文件。请综合运用C语言的基本知识,开发该程序,要求实现如下基本功能:1234输入源文件名、目标文件名;程序中设定分栏数、栏宽、每页行数等;分栏、编号读出源文件对文件进行分栏、编号排版显示在屏幕上);保存(将新分栏排版后的文档用目标文件名保存)。
完成上述基本功能后,将程序中分栏数、栏宽、每页行数等常数改为如下两种形式输入:1)以菜单形式提示每页栏数、每行、每栏横向字符数、每页行数及每页上下留空行数等数据的输入,以键盘接收的信息作为参数。2)从命令行给出参数,比如命令行的形式为:执行程序分栏文件名栏数页宽栏宽行数页上下留空数,其余参数可缺省,若缺省,则以预定的信息为参数。
2
f三
程序详细设计说明
一系统结构设计1、输入模块:
此模块中,将输入输入文件的名字,输出文件的名字,然后是输入分栏数,页宽,栏宽,每页的行数及页面上下的留空数。
2、读入模块:
在输入文件中读入数据并存储于数组中,再根据用户的要求做后续处理并保存起来。
3、读出模块
在此模块当中,将已经处理好的数据输出到屏幕让用户预览,并输出到输出文件当中。
系统功能模块图:
输入模块开始
读入模块
结束
读出模块
3
f(二)输入模块设计:1、输入输出文件输入:
提示用户输入输入输出文件的文件名,并用字符型数组保存文件名。再调用fope
函数用只读的形式打开输入文件,用只写的形式打开输出文件,并判断文件打开是否错误。
2、分栏数输入:
提示用户输入分栏数,并用一个整型的变量存储用户的输入。
3、输入页宽:
提示用户输入页宽值,页宽默认值为80,80为上限。
4、输入栏宽:
提示用户输入栏宽值,并用一个整型变量存储该值。
5、输入行数:
提示用户输入每一页的行数,用整型变量存储该值。6、输入每一页上下的留空数:提示用户输入留空数的值,用整型变量存储该值。
读取模块设计:
首先定义循环,让fgets函数不断读取用户所提供的文件,当读到返回为EOF结束。将读取的文件首先存储在一个字符r