C语言文件读写练习:从键盘读入若干字符,并逐个将这些字符写入文件中,直至输入"#"结束。再将这些字符从文件中读出并显示到屏幕上。
2017-10-03 20:58
826 查看
#include<stdio.h> #include<stdlib.h> void main() { //要求:从键盘读入若干字符,并将这些字符写入文件,直至遇到"#"结束。并从文件中读出显示。 char ch = NULL;//存放用户输入的字符 char fileName[10];//存放用户输入的文件的文件名 FILE* fp = NULL;//指向用户写入字符的文件 //文件准备 printf("请输入要写入的文件名(包括后缀):"); scanf("%s",&fileName); fp = fopen(fileName,"w");//以可写的方式打开文件,无则创建 if(!fp)//如果文件打开失败fp的值会是NULL,而在C语言中自带 #define NULL 0 即表示:NULL的值为0 { printf("文件打开失败! "); exit(0); } //first 将字符从键盘逐个读入,同时写入文件 printf("请输入字符,以“#”表示结束输入!\n "); scanf("%c",&ch);//存放用户输入的第一个字符,以便实现循环条件的初次判断 while(ch!='#') { fputc(ch,fp);//写入用户输入的一个字符 scanf("%c",&ch);//用户再次输入一个字符 } //do{ // scanf("%c",&ch);//用户输入一个字符,存放在ch中 // fputc(ch,fp);//同时将用户输入的字符写入文件fp中 即输入一个字符就立即将该字符写入文件 //}while(ch != '#');//直至遇到"#"结束 (弊端:# 会写入文件) fclose(fp);//写入后随即关闭文件,以便数据从缓冲区立即写入文件中 这一句是必要的,若无会使得后续从文件中读取数据读到的是空 //second 将字符从文件逐个读出显示 fp = fopen(fileName,"r");//以可读的方式 打开文件 if(!fp) { printf("文件打开失败! "); exit(0); } if( ( ch = fgetc(fp) ) != EOF)//首先判断文件中是否有字符 {//EOF为EOF是end of file的缩写,表示文件读完了,文件位置指针指向了结尾 注意,这里的EOF是不需要引号引起来的 while(ch != EOF) { printf("%c",ch);//读出一个字符并显示该字符 ch = fgetc(fp); } } else { printf("文件为空!"); } fclose(fp);//关闭文件 system("pause"); }
相关文章推荐
- C键盘输入一行字符,写入一个文件,再把该文件内容读出显示在屏幕上。
- 从键盘输入两个学生数据,写入一个文件中, 再读出这两个学生的数据显示在屏幕上。
- 从键盘输入若干个字符,逐个存到磁盘文件中,直到输入‘\n’为止,并将建立的文本文件的内容在存入文件的同时,在屏幕上显示出来。。
- 从键盘输入若干个字符,逐个存到磁盘文件data.txt中,直到输入’\n’为止,并将建立的文本文件的内容在存入文件的同时,在屏幕上显示出来:
- 从键盘输入一字符串(以#作为结束),显示在屏幕中并写入ch.txt文件中
- Linux下C语言键盘输入密码时无回显(屏幕不显示字符)
- Linux下C语言键盘输入密码时无回显(屏幕不显示字符)
- 一道小题:从键盘输入一些字符,逐个把他们写入文件,直到输入一个#为止
- 汇编语言:请写一个程序把当前目录下的TEXT.TXT文件中的字符读出来显示在屏幕上,当遇到结束符时就停止读取。
- 汇编语言: 从键盘上输入一串字符(用回车键结束,使用10号功能调用。),将其中的小写英文 字母变换为大写英文字母,其他字符保持不变。然后将变换后的字符串显示出来。
- 使用缓冲流读取试题文件,每次显示试题文件中的一道题目。读取到字符“*”时候暂停读取,等待用户从键盘输入答案。用户做完全部题目后,程序给出用户的得分。Test.txt如下:
- 【C/C++学院】0826-文件重定向/键盘输入流/屏幕输出流/字符串输入输出/文件读写简单操作/字符文件读写二进制与文本差别/get与getline挖掘数据/二进制与文本差别/随机位置/多线程初级
- 从键盘多行输入,写入TXT文件并读取输出~只显示第一行,如何解决?(答案见代码)
- 阿里___字符从键盘输入到屏幕显示过程
- 3. 定义10个字节的键盘缓冲区,然后键盘输入字符填满该缓冲区,做如下工作: (1)分别将输入键盘缓冲区的字符按数字,小写字母,大写字母,其他字符进行计数; 分别将这些计数值显示出来。 (2)分别将这
- HOOK编程之获得键盘输入字符并写入文件
- 假设有10位同学,各有3门课程的成绩。从键盘输入每位同学的学号、姓名和3门课程的成绩,然后把数据保存到磁盘文件,再将磁盘文件中的学生信息读入并显示
- 汇编语言 :从键盘输入一个单个字符,显示该字符的ASCII码,回车键退出循环,终止程序
- 1.编写程序:“猫”读入指定文件然后显示;“鼠”读入键盘输入然后写到文件。
- 从键盘输入一些字符,逐个把它们送到键盘上去,直到输入一个"#"为止