用c语言在main函数中创建一个文件,将m个字符串写入文件中。打开该文件,读出所有字符串,并找出最大的一个字符串,将其保存到另一个文件中要求:m,字符串由键盘输入
时间: 2023-03-23 14:02:47 浏览: 128
下面是用C语言编写main函数来实现题目要求的示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_STR_LEN 1000
int main()
{
FILE *fp;
char str[MAX_STR_LEN], max_str[MAX_STR_LEN] = {0};
int max_len = 0;
printf("请输入一串字符串:\n");
fgets(str, MAX_STR_LEN, stdin); // 从键盘输入字符串
fp = fopen("output.txt", "w"); // 打开文件以写入
if (fp == NULL)
{
printf("无法打开文件!\n");
exit(1);
}
fprintf(fp, "%s", str); // 将字符串写入文件
fclose(fp); // 关闭文件
printf("写入文件成功!\n");
fp = fopen("output.txt", "r"); // 打开文件以读取
if (fp == NULL)
{
printf("无法打开文件!\n");
exit(1);
}
while (fgets(str, MAX_STR_LEN, fp) != NULL) // 逐行读取文件中的字符串
{
int len = strlen(str);
if (len > max_len) // 找到最长的字符串
{
max_len = len;
strcpy(max_str, str);
}
printf("%s", str); // 打印读取到的字符串
}
fclose(fp); // 关闭文件
printf("读取文件成功!\n");
fp = fopen("input.txt", "w"); // 打开文件以写入
if (fp == NULL)
{
printf("无法打开文件!\n");
exit(1);
}
fprintf(fp, "%c", max_str[0]); // 将最长的字符串的第一个字符写入文件
fclose(fp); // 关闭文件
printf("写入文件成功!\n");
return 0;
}
```
这个程序会从键盘读入一个字符串,将其写入一个名为"output.txt"的文件中,并在屏幕上打印出文件中的所有字符串。然后,它会找到最长的字符串,并将该字符串的第一个字符写入一个名为"input.txt"的文件中。在这个程序中,我们使用了标准库函数来处理文件的读写操作,包括`fopen`、`fprintf`、`fgets`和`fclose`等函数。
阅读全文