2023-2024-1 20231424《计算机基础与程序设计》第14周学习总结
作业信息
作业属于的课程 | <班级链接>(2022-2023-1-计算机基础与程序设计) |
---|---|
作业要求 | <作业要求>(2022-2023-1计算机基础与程序设计第一周作业) |
作业目标 | 《C语言程序设计》第13章 |
作业正文 | https://www.cnblogs.com/2004lby/p/17937641 |
教材学习内容总结
《C语言程序设计》第13章
主要讲了文本文件和二进制文件的定义以及区别;
文件的打开方式以及如何打开文件和关闭文件,即fopen()函数和fclose()函数;
如何读写文件中的字符,以及如何读写文件中的字符串,即fgetc()函数和fputc()函数;
如何按指定格式从文件读数据和向文件写入数据,即fscanf()函数和fprintf()函数;
如何按数据块读写文件,即fread()函数和fwrite()函数。
教材学习中的问题和解决过程
问题1:什么是文件系统?文件系统就是某一类文件的组合吗?
问题1解决方案:
文件系统是操作系统用于明确存储设备(常见的是磁盘,也有基于NAND Flash的固态硬盘)或分区上的
文件的方法和数据结构;即在存储设备上组织文件的方法。操作系统中负责管理和存储文件信息的软件机
构称为文件管理系统,简称文件系统。
文件系统由三部分组成:文件系统的接口,对对象操纵和管理的软件集合,对象及属性。从系统角度来
看,文件系统是对文件存储设备的空间进行组织和分配,负责文件存储并对存入的文件进行保护和检索的
系统。具体地说,它负责为用户建立文件,存入、读出、修改、转储文件,控制文件的存取,当用户不再
使用时撤销文件等。
问题2:什么是缓冲区?有什么作用?
问题2解决方案:
缓冲区就是我们常说的缓存,属于内存的一部分。它依据对应的输入设备和输出设备把内存的一部分空间
分为输入缓冲区和输出缓冲区。
可以减少对磁盘的读写次数,提高计算机的运行效率。系统调用时需要时间的,程序中频繁的使用系统调
用会降低程序的运行效率 ,库函数访问文件的时候根据需要,设置不同类型的缓冲区,从而减少了直接
调用IO系统调用的次数,也就提高了效率。
问题3:fflush()函数有什么更多的的用法呢?
问题3解决方案:
函数的定义:int fflush(FILE *stream);
如果stream指向输出流或者更新流(updatestream),并且这个更新流最近执行的操作不是输入,那么
fflush函数将把任何未被写入的数据写入stream指向的文件(如标准输出文件stdout)。否则,fflush函数
的行为是不确定的。
fflush(NULL)清空所有输出流和上面提到的更新流。如果发生写错误,fflush函数会给那些流打上错误标
记,并且返回EOF,否则返回0。
由此可知,如果 stream 指向输入流(如stdin),那么 fflush函数的行为是不确定的。故而使用
fflush(stdin)是不正确的,至少是移植性不好的。
代码调试中的问题和解决过程
问题1:无法将数据读入文档中。
问题1解决方案:通过翻阅课本,发现exit()函数是在stdlib头文件中的,应当在开头加上#include <stdlib.h>。
基于AI的学习
学习进度
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第6周 | 50/200 | 2/2 | 2/2 | |
第7周 | 50/500 | 2/4 | 3/3 | |
第8周 | 150/1000 | 3/7 | 2/8 | |
第9周 | 150/1300 | 2/9 | 3/10 | |
第10周 | 300/1600 | 1/10 | 3/13 | |
第11周 | 300/1900 | 1/10 | 3/16 | |
第12周 | 300/2200 | 1/10 | 3/19 | |
第13周 | 300/2500 | 1/14 | 3/22 | |
第14周 | 200/2700 | 1/14 | 3/25 |