题目:
编写一个程序,实现以下功能:
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()`函数中,程序打开已存在的文件,并将文件中的内容逐行显示在屏幕上。