2024-2025-1 20241425《计算机基础与程序设计》第13周学习总结

2024-2025-1 20241425《计算机基础与程序设计》第13周学习总结

作业信息

这个作业属于哪个课程 https://edu.cnblogs.com/campus/besti/2024-2025-1-CFAP
这个作业要求在哪里 https://www.cnblogs.com/rocedu/p/9577842.html#WEEK13
这个作业的目标 《C语言程序设计》第12章
作业正文 ... 本博客链接

教材学习内容总结

介绍文件的概念,包括文件的分类(文本文件和二进制文件)。
讨论文件在操作系统中是如何被管理和存储的。
文件指针:

介绍文件指针(FILE*)的概念和作用。
说明如何使用文件指针来指向一个文件。
文件的打开与关闭:

讲解如何使用fopen()函数打开文件,并返回一个文件指针。
讨论fclose()函数如何关闭一个已经打开的文件。
文件的读写:

介绍文件的读写操作,包括fgetc(), getc(), fputc(), putc(), fgets(), fputs(), fprintf(), fscanf()等函数。
讨论字符读写和字符串读写的区别。
文件的定位:

介绍文件位置指针的概念,以及如何使用rewind(), ftell(), fseek()等函数进行文件定位。
文件的格式化读写:

讲解如何使用fprintf()和fscanf()函数进行格式化的文件读写操作。
文件的随机访问:

讨论如何对文件进行随机访问,包括如何跳转到文件的特定位置进行读写。
文件的错误检测:

介绍如何检测文件操作中的错误,包括feof(), ferror()等函数的使用。
二进制文件的读写:

讨论二进制文件读写与文本文件读写的区别,以及如何使用fwrite(), fread()等函数进行二进制文件的读写。
文件缓冲区:

讨论文件缓冲区的概念,以及如何控制文件缓冲区的行为。
文件操作的其他函数:

介绍一些其他文件操作相关的函数,如remove(), rename(), tmpfile(), tmpnam()等。

教材学习中的问题和解决过程(先问 AI)

问题1:结构体的好处是什么?
解决方案:询问AI
AI:一、数据整合的便利性
结构体能够将不同类型的数据组合在一起。例如,在描述一个员工的信息时,可能包含姓名(字符串类型)、工号(整数类型)、工资(浮点数类型)、入职日期(结构体类型,包含年、月、日等整数类型成员)等。使用结构体可以把这些相关但类型不同的数据整合到一个单元中,使数据的表示更加直观。
对于复杂的数据结构,如链表、树等,结构体可以作为节点的基本组成部分。以链表为例,一个链表节点结构体可能包含数据域(存储实际的数据,其类型可以是各种基本类型或其他结构体类型)和指针域(指向下一个节点的指针),这样就方便地构建了链表这种数据结构。
二、函数参数的简化
当需要向函数传递多个相关的数据时,如果不使用结构体,可能需要传递多个单独的参数。例如,一个函数用于计算二维平面上一个点到原点的距离,若不使用结构体,可能需要分别传递点的x坐标和y坐标两个参数。
使用结构体后,可以将这些相关的数据封装在一个结构体中,然后只传递一个结构体变量作为函数参数。这样不仅减少了函数参数的数量,使函数的调用更加简洁,而且提高了代码的可读性和可维护性。例如,定义一个包含x和y坐标的点结构体 Point ,计算距离的函数只需要接收一个 Point 类型的参数即可。

posted @ 2024-12-22 21:42  DarthAnakin  阅读(2)  评论(0编辑  收藏  举报