从键盘上输入多个字符,以#号结束,存入指定文件中,然后从文件中读出并显示。测试输入: /data/workspace/myshixun/myfile3.txt abdefdggh#
时间: 2024-01-16 18:02:40 浏览: 148
好的,我来解答你的问题。
实现这个功能可以使用C语言中的文件操作函数。具体步骤如下:
1. 打开指定文件,使用fopen函数,指定打开模式为“写入”,如果文件不存在,则创建该文件。
```c
FILE *fp = fopen("/data/workspace/myshixun/myfile3.txt", "w");
```
2. 从键盘上读取字符,使用getchar函数,判断输入的字符是否为“#”,如果是,则退出循环。
```c
char c;
while ((c = getchar()) != '#') {
// 写入文件
}
```
3. 将读取到的字符写入文件,使用fputc函数。
```c
fputc(c, fp);
```
4. 关闭文件,使用fclose函数。
```c
fclose(fp);
```
5. 重新打开文件,使用fopen函数,指定打开模式为“读取”。
```c
fp = fopen("/data/workspace/myshixun/myfile3.txt", "r");
```
6. 从文件中读取字符,使用fgetc函数,判断是否到达文件结尾。
```c
while ((c = fgetc(fp)) != EOF) {
// 显示字符
}
```
完整代码如下:
```c
#include <stdio.h>
int main() {
// 写入文件
FILE *fp = fopen("/data/workspace/myshixun/myfile3.txt", "w");
char c;
while ((c = getchar()) != '#') {
fputc(c, fp);
}
fclose(fp);
// 读取文件
fp = fopen("/data/workspace/myshixun/myfile3.txt", "r");
while ((c = fgetc(fp)) != EOF) {
putchar(c);
}
fclose(fp);
return 0;
}
```
希望能够帮助到你!
阅读全文