偶写的一个简单行编辑程序(我的实习题)

作者:袖梨 2022-07-02

/*这是清华大学《数据结构题集》实习题3中的一道题--做一个简单行编辑
程序,也是我的实习作业。现已经写出来,如大家有兴趣可以看一看。本人编
程水平不高,属于初学者,如有高手看到请不要见笑。程序在VC++6.0中调试
通过,题目的具体要求:
 打开一个文件 o<行号><文件名><回车>
 行插入格式: i<行号><回车><文本><回车>
 行删除格式: d<行号1>[<空格><行号2>]<回车>
 活区切换格式: n<回车> 
 活区显示格式: p<回车>   
 退出编辑模式: e<回车>
其中执行打开文件命令后,需要输入要打开的文件名和要输出的文件名。
如果谁对编程,网络技术有兴趣,大家可以联系我做个朋友,一起研究学习。
联系方式:
  E-mail:[email protected]
  QQ    :21739034
*/
#define NULL 0
#define OK 0
#include
#include
#include
#include
#include
typedef struct text
{
 char string[80];//存储每一行的元素
 struct text *next;//指向后一个节点的指针
 struct text *pre;//指向前一个节点的指针
 int num;//每一行元素的长度
 int flat;//确定此行是否被删除的标志
}text;
FILE *fp,*out;//fp是执行被打开的文件,out指向被写入的文件
text *head;//链表的头指针
int n=0,sum,delnum,xiugai=0,page=0;
file://修改用来指示文件是否被修改过,如果修改过才回存盘。page用来计算显示的
file://页数.delnum用来存储被删除的字节数,sum存储一页的总字节数

void byebye()//没有具体用处,只是写着玩的,在屏幕上显示一个bye
{
 puts("ttt********    *       *   ********");
 puts("ttt*       *    *     *    *  ");
 puts("ttt*       *     *   *     *  ");
 puts("ttt*      *       * *      *  ");
 puts("ttt********        *       ********");
 puts("ttt*      *        *       *  ");
 puts("ttt*       *       *     &nbs

相关文章

精彩推荐