2024-2025-1 20241415《计算机基础与程序设计》第十四周学习总结
作业信息
这个作业属于哪个课程 | 2024-2025-1-计算机基础与程序设计 |
---|---|
这个作业要求在哪里 | 2024-2025-1计算机基础与程序设计第十四周作业 |
这个作业的目标 | 自学《C语言程序设计》第13-14章 |
作业正文 | https://www.cnblogs.com/zhaoshaoning/p/18638504 |
教材学习内容总结
以下是对《C语言程序设计(第五版)》第13 - 14章内容的总结:
第13章:文件
文件概述
介绍了文件的概念,在程序设计中,文件是存储在外部介质(如磁盘)上的数据集合,可分为文本文件(以ASCII码形式存储,便于阅读和处理文本信息)和二进制文件(以数据在内存中的存储形式原样存储,更节省空间且适合存储数值型数据等)。
文件类型指针
详细讲解了 FILE
类型,它是系统定义用于存放文件有关信息的结构体类型,通过定义 FILE *
类型的指针变量(如 FILE *fp;
)来指向某个文件,借助这个指针实现对文件的各种操作。
文件的打开与关闭
- 打开文件:使用
fopen
函数,其一般形式为FILE *fp = fopen("文件名", "文件使用方式");
,文件使用方式包含多种,例如 “r”(只读方式打开文本文件)、“w”(只写方式打开文本文件,若文件不存在则创建,存在则覆盖原有内容)、“a”(追加方式打开文本文件,在文件末尾添加内容)等,还介绍了对应的二进制文件打开方式(如“rb”“wb”“ab”等),同时强调打开文件操作需要进行返回值判断,若返回NULL
表示打开失败。 - 关闭文件:通过
fclose
函数关闭文件,格式为fclose(fp);
,及时关闭文件能防止文件数据丢失、释放文件相关资源等,关闭成功返回值为0,失败返回EOF
。
文件的读写
- 字符读写函数:
fgetc
函数用于从指定文件中读取一个字符,其一般形式为ch = fgetc(fp);
(ch
为字符变量,fp
为文件指针),读到文件末尾返回EOF
。fputc
函数用于将一个字符写入指定文件,如fputc(ch, fp);
(ch
为要写入的字符,fp
为文件指针)。
- 字符串读写函数:
fgets
函数从文件中读取一行字符串,格式为fgets(str, n, fp);
(str
为存放字符串的字符数组,n
为最多读取的字符个数,fp
为文件指针),读取成功返回str
指针,失败或读到文件末尾返回NULL
。fputs
函数把字符串写入文件,如fputs(str, fp);
(str
为要写入的字符串,fp
为文件指针)。
- 格式化读写函数:
fscanf
函数按照指定格式从文件中读取数据,和scanf
函数使用类似,不过多了文件指针参数,例如fscanf(fp, "%d %s", &num, name);
用于从文件读取整数和字符串到相应变量中。fprintf
函数按格式向文件中写入数据,像fprintf(fp, "%d %s", num, name);
可以把变量的值按格式写入文件。
- 数据块读写函数:
fread
和fwrite
函数用于读写数据块,常用来处理二进制文件中结构体等类型的数据整体读写,例如fread(buffer, size, count, fp);
(buffer
为存放数据的内存地址,size
为每个数据项的字节数,count
为要读写的数据项个数,fp
为文件指针)以及fwrite
与之对应的参数格式。
文件的定位
讲述了文件位置指针的概念,它指示当前读写操作的位置,通过 fseek
函数可改变文件位置指针,其一般形式为 fseek(fp, offset, origin);
(fp
为文件指针,offset
为偏移量,origin
为起始位置,有 SEEK_SET
(文件开头)、SEEK_CUR
(当前位置)、SEEK_END
(文件末尾)等),另外还有 ftell
函数可获取文件位置指针当前的位置(返回值为相对于文件开头的偏移字节数)以及 rewind
函数用于把文件位置指针移到文件开头。
第14章:常见错误和程序调试
常见错误类型
- 语法错误:指编写代码时不符合C语言语法规则的错误,例如缺少分号、括号不匹配、关键字拼写错误等,这类错误在编译阶段就能被编译器检测出来,并给出相应错误提示信息帮助定位和修正。
- 逻辑错误:代码语法正确但运行结果不符合预期,比如算法设计错误、循环条件设置不当、变量初始化错误等,逻辑错误较难发现,通常需要通过分析程序运行过程、输出中间结果等调试手段来排查。
- 运行时错误:程序在运行过程中出现的错误,例如除数为0、数组越界访问、内存非法访问等,可能导致程序崩溃或者产生异常结果,有些运行时错误可以通过添加适当的错误处理代码来避免程序异常终止。
程序调试方法
- 调试工具介绍:像 Visual C++等集成开发环境自带调试工具,可进行单步执行(逐行执行代码查看每一步的执行效果)、设置断点(让程序运行到指定位置暂停,便于观察变量值等情况)、查看变量值(实时监测程序运行中各变量的变化情况)等操作来帮助分析程序错误所在。
- 利用输出语句调试:在程序关键位置添加
printf
等输出语句,输出变量的值、程序执行到的位置等关键信息,通过分析输出结果来判断程序逻辑是否正确,虽然这种方法相对原始但比较直观且容易实施,尤其对于简单程序或者初步排查问题很有用。
基于AI的学习