20231327《计算机基础与程序设计》第11周学习总结

发布时间 2023-12-10 19:39:26作者: 落望于灵

学期(2023-2024-1) 学号(20231327) 《计算机基础与程序设计》第11周学习总结

作业信息

课程 <班级的链接>(2023-2024-1-计算机基础与程序设计
要求 <作业要求的链接>(2023-2024-1计算机基础与程序设计第11周作业)
目标 <了解文件系统以及代码层面的使用>
作业正文 https://i.cnblogs.com/posts/edit

教材学习内容总结

在计算机科学中,区分"二进制文本"和"其他文本"(通常指普通文本)主要涉及文件的内容和格式。这两种文本类型在存储方式、用途和可读性方面有显著差异。

普通文本

普通文本文件仅包含文本字符(如字母、数字、标点符号)和少量控制字符(如换行符)。它们的特点包括:

  1. 可读性:普通文本文件可以用任何文本编辑器打开,内容对人类来说是可读的。
  2. 编码:通常使用字符编码(如ASCII、UTF-8)来表示字符。
  3. 无格式:这些文件不包含字体、颜色、图像等格式信息。例如,.txt文件就是普通文本文件。
  4. 用途:用于存储简单的文本信息,如代码、配置文件、文档。

二进制文本

二进制文件包含更为复杂的数据,不仅仅局限于文本字符。它们的特点包括:

  1. 非文本内容:可以包含非文本内容,如图像、视频、程序代码。
  2. 特定格式:这些文件遵循特定的格式和结构,需要特定的程序或解释器来读取。例如,.exe.png.docx文件都是二进制文件。
  3. 不可读性:大部分内容对人类来说是不可直接阅读的。在文本编辑器中打开时,可能会显示为乱码。
  4. 用途:用于存储应用程序、图像、音频、视频、复杂文档等。

总结

  • 普通文本:仅包含基本文本字符,可读,无格式,用于简单文本信息。
  • 二进制文本:包含各种数据类型,需要特定软件来解析,通常不直接可读,用于存储复杂数据和程序。

链表和数组异同:

教材学习中的问题和解决过程

用只读不写模式打开某一文本

  1. 阅读内容:可以浏览文件的内容。

  2. 复制文本:可以从文件中复制文本。这意味着用户可以选择文件中的文本,并将其复制到剪贴板,然后粘贴到另一个文件或应用程序中。
    然而,用户不能执行以下操作:

  3. 修改内容:无法编辑或更改文件的内容。

  4. 保存更改:即使文本编辑器允许您在其界面上做出更改,这些更改也无法保存到原始文件中。

  5. 从其他文件复制到该文件:不能将文本或数据从其他地方复制并粘贴到这个只读文件中。
    ==文本
    链表和数组是数据结构的两种基本形式,它们在存储和管理数据方面有各自的特点和用途:

  6. 数组

    • 固定大小:在声明时需要指定大小,且大小在运行时不可改变。
    • 连续内存:数组中的元素在内存中是连续存储的。
    • 索引访问:支持通过索引直接访问元素,时间复杂度为O(1)。
    • 高效的随机访问:适合需要频繁访问特定索引位置的场景。
  7. 链表

    • 动态大小:链表的大小可以在运行时动态变化。
    • 非连续内存:链表中的元素可以分散存储在内存中,每个元素(节点)指向下一个元素。
    • 顺序访问:访问特定元素需要从头开始遍历,平均时间复杂度为O(n)。
    • 高效的插入和删除:在已知节点的情况下,可以快速进行插入和删除操作。

相同点

  • 都是用于存储数据的线性数据结构。
  • 可以存储相同类型的数据项。

不同点

  • 内存分配:数组是静态内存分配,而链表是动态内存分配。
  • 性能:数组在随机访问数据时更高效,链表在插入和删除操作时更高效。
  • 内存利用:链表可以更有效地使用内存,但需要额外的空间存储指针。
  • 大小可变性:链表的大小可以动态改变,数组的大小固定。

选择使用数组还是链表取决于具体的应用场景和需求。

基于AI的学习





代码调试中的问题和解

1.对于某两段时间间隔后是星期几的题,我们在知道多少天的情况下直接加上今天的星期对7取余即可,而不需要再分类。

2.size_t的返回值输出应该用5zu.

3.1e-n表示1x10的-n次方。

4.abs()函数可对数字取绝对值。当用float定义某个数,相应地用fabs()求绝对值。