文件的写入和读取操作

++***题目:
编写一个程序,实现以下功能:

  1. 创建一个新的文本文件,并将用户输入的数据写入文件中。
  2. 打开已存在的文本文件,并将其中的数据显示在屏幕上。***++

#include <stdio.h>

#include <stdlib.h>

void writeToFile() {

FILE *fp;

char data[100];

fp = fopen("data.txt", "w");

if (fp == NULL) {

printf("文件打开失败\n");

exit(1);

}

printf("请输入要写入文件的内容:\n");

fgets(data, sizeof(data), stdin);

fprintf(fp, "%s", data);

fclose(fp);

}

void readFromFile() {

FILE *fp;

char content[100];

fp = fopen("data.txt", "r");

if (fp == NULL) {

printf("文件打开失败\n");

exit(1);

}

while (fgets(content, sizeof(content), fp)) {

printf("%s", content);

}

fclose(fp);

}

int main() {

int choice;

printf("请选择操作:\n");

printf("1. 写入文件\n");

printf("2. 读取文件\n");

scanf("%d", &choice);

switch(choice) {

case 1:

writeToFile();

break;

case 2:

readFromFile();

break;

default:

printf("无效的选择\n");

break;

}

return 0;

}

这个程序通过一个菜单提供两个选项,用户可以选择写入数据到文件中,或者显示已存在的文件内容。根据用户的选择,调用相应的函数,执行对应的操作。

在`writeToFile()`函数中,程序创建一个新的文件(如果文件不存在),并将用户输入的数据写入文件中。

在`readFromFile()`函数中,程序打开已存在的文件,并将文件中的内容逐行显示在屏幕上。

相关推荐
努力创造奇迹3 小时前
C 语言联合体、枚举、typedef 详解
c语言·开发语言
ImAlex3 小时前
C语言结构体中0字节数组(柔性数组)的妙用(附内存排布图解和完整代码)
c语言
纪元A梦3 小时前
华为OD机试真题——阿里巴巴找黄金宝箱Ⅰ(2025A卷:100分)Java/python/JavaScript/C/C++/GO最佳实现
java·c语言·javascript·c++·python·华为od·go
ImAlex4 小时前
如何使用gcc的-finstrument-functions特性通过打印函数调用栈辅助理解复杂C/C++项目的函数调用关系
linux·c语言
小柒的博客5 小时前
联合体union的特殊之处
c语言·机器人
图先6 小时前
微分与积分(前言)
考研
YuforiaCode6 小时前
第十二届蓝桥杯 2021 C/C++组 空间
c语言·c++·蓝桥杯
YuforiaCode6 小时前
第十二届蓝桥杯 2021 C/C++组 卡片
c语言·c++·蓝桥杯
Jamence8 小时前
多模态大语言模型arxiv论文略读(四十五)
人工智能·考研·语言模型
阿方.9188 小时前
C语言----操作符详解(万字详解)
c语言·开发语言