在main函数中创建一个文件,将m个字符串写入文件中。打开该文件,读出所有字符串,并找出最长的一个字符串,将其保存到另一个文件中。要求:m、字符串由键盘输入。
2条回答 默认 最新
语言-逆行者 2023-04-04 12:38关注#include <stdio.h> #include <string.h> int main() { int m, i, max_len = 0; char str[100], max_str[100], filename[20]; FILE *fp; printf("请输入要写入的字符串个数:"); scanf("%d", &m); // 打开文件并写入字符串 fp = fopen("strings.txt", "w"); for (i = 0; i < m; i++) { printf("请输入第%d个字符串:", i + 1); scanf("%s", str); fprintf(fp, "%s\n", str); } fclose(fp); // 读取文件并找出最长的字符串 fp = fopen("strings.txt", "r"); while (fscanf(fp, "%s", str) != EOF) { if (strlen(str) > max_len) { max_len = strlen(str); strcpy(max_str, str); } } fclose(fp); // 将最长的字符串保存到文件中 printf("最长的字符串为:%s\n", max_str); printf("请输入要保存到的文件名:"); scanf("%s", filename); fp = fopen(filename, "w"); fprintf(fp, "%s", max_str); fclose(fp); return 0; }解决 无用评论 打赏 举报