用C语言写一个行文本编辑器,能实现插入、删除、保存、显示等功能,写出C程序
时间: 2023-03-14 08:09:35 浏览: 63
这是一个实现上述功能的简单C语言文本编辑器:#include <stdio.h>
#include <string.h>
#define MAX_LEN 100int main(void) {
int i, j, k, n;
char ch, str[MAX_LEN];
char insert[MAX_LEN], delete[MAX_LEN], save[MAX_LEN]; printf("请输入一个字符串:");
gets(str); printf("请输入要插入的字符串:");
gets(insert);
printf("请输入要删除的字符:");
scanf("%c", &ch);
printf("请输入要保存的字符串:");
gets(save); n = strlen(str);
for(i=0, j=0; i<n; i++){
if(str[i] != ch)
delete[j++] = str[i];
}
delete[j] = '\0'; strcat(insert, delete);
strcpy(str, insert);
printf("插入/删除后的字符串为:%s\n", str); printf("保存字符串:%s\n", save); return 0;
}
相关问题
用c语言写一个程序实现找出最长后缀字符串的功能
您好,下面是用c语言实现找出最长后缀字符串的程序:
```c
#include<stdio.h>
#include<string.h>
int main() {
char str[100]; // 声明字符串
int len;
printf("请输入一个字符串:\n");
scanf("%s", str); // 获取输入的字符串
len = strlen(str); // 获取字符串长度
for(int i = len - 1; i >= 0; i--) { // 倒序遍历字符串
if(str[i] == '.') { // 找到后缀的分隔符'.'
printf("最长的后缀串是: %s\n", &str[i+1]); // 输出后缀串
break;
}
}
return 0;
}
```
希望能够帮到您!
如何用C语言写一个文档编辑器
要用C语言编写文档编辑器,需要掌握以下基本知识:
1. C语言基本语法和数据类型。
2. 文件操作函数,包括打开、读写、关闭文件等。
3. 字符串操作函数,包括字符串拼接、复制、查找、替换等。
4. 缓存区操作函数,包括缓存区读写、移动光标等。
下面是一个简单的文档编辑器示例代码,实现了打开、编辑、保存等基本功能:
```
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define BUFFER_SIZE 1024
int main()
{
char filename[100], buffer[BUFFER_SIZE];
FILE *fp;
int choice, len, pos;
printf("Enter file name: ");
scanf("%s", filename);
fp = fopen(filename, "r");
if (fp == NULL)
{
printf("File not found.\n");
exit(1);
}
printf("\nFile contents:\n\n");
while (fgets(buffer, BUFFER_SIZE, fp) != NULL)
{
printf("%s", buffer);
}
fclose(fp);
while (1)
{
printf("\n1. Edit file\n2. Save and exit\n\nEnter choice: ");
scanf("%d", &choice);
switch (choice)
{
case 1:
fp = fopen(filename, "r+");
printf("\nEnter position to edit: ");
scanf("%d", &pos);
fseek(fp, pos, SEEK_SET);
printf("Enter text to insert: ");
scanf("%s", buffer);
len = strlen(buffer);
fwrite(buffer, len, 1, fp);
fclose(fp);
break;
case 2:
fp = fopen(filename, "w");
printf("\nEnter text to save: ");
scanf("%s", buffer);
len = strlen(buffer);
fwrite(buffer, len, 1, fp);
fclose(fp);
exit(0);
default:
printf("Invalid choice.\n");
break;
}
}
return 0;
}
```
该程序首先要求用户输入要打开的文件名,并打开该文件。如果文件不存在,则输出错误信息并退出程序。
然后,程序使用fgets函数读取文件内容,并将其输出到屏幕上。
接下来,程序进入一个死循环,等待用户输入编辑或保存选项。如果用户选择编辑选项,程序要求用户输入要编辑的位置和要插入的文本,然后使用fseek和fwrite函数将文本插入到文件中的指定位置。
如果用户选择保存选项,程序要求用户输入要保存的文本,并使用fwrite函数将文本写入文件中。然后程序退出。
需要注意的是,该程序只实现了最基本的文本编辑功能,无法处理复杂的文本格式和编辑操作。如果要实现更复杂的功能,需要进一步学习和掌握相关知识。