2024-2025-1 20241322《计算机基础与程序设计》第七周学习总结
2024-2025-1 20241322《计算机基础与程序设计》第七周学习总结
作业信息
这个作业属于哪个课程 | https://edu.cnblogs.com/campus/besti/2024-2025-1-CFAP |
---|---|
这个作业要求在哪里 | https://www.cnblogs.com/rocedu/p/9577842.html#WEEK07 |
这个作业的目标 | ①数组与链表②基于数组和基于链表实现数据结构③无序表与有序表④树⑤图⑥子程序与参数 |
作业正文 | https://www.cnblogs.com/qiangedaming/p/18535917 |
教材学习内容总结
第8章:抽象数据类型与子程序
8.1 抽象数据类型(ADT)
- 定义:抽象数据类型是数据和操作的集合,它们明确地与特定实现分离。ADT作为容器,用于存放和操作其他对象,将属性(数据与操作)与特定实现分离。
- 层次结构:包含应用层(特定问题中的数据视图)、逻辑层(数据值和操作的抽象视图)和实现层(数据项的结构和对数据的操作编码)。
8.2 栈
- 特性:栈是一种抽象复合结构,遵循后进先出(LIFO)原则,只能从一端访问和操作元素。
8.3 队列
- 特性:队列是一种抽象结构,遵循先进先出(FIFO)原则,项目从一端入另一端出。
8.4 列表
- 链式结构:列表可以被形象化为链式结构,将数据项和找到下一项位置的信息保存在同一容器的实现方法。
8.5 树
- 二叉树:树是一种分层结构体系,二叉树中每个节点可以有两个后继节点(子女)。树头是起始节点,称为根,没有子女的节点称为叶节点。
- 二叉检索树:支持快速查找、插入和删除操作的数据结构。
8.6 图
- 定义:图是由节点和边组成的数据结构,用于表示复杂的关系网络。
- 创建图:需要在表格中添加点、边和权值。
- 图算法:包括深度优先搜索、广度优先搜索和单源最短路径搜索。
8.7 子程序
- 定义:子程序是一段独立的程序代码,可以被其他程序代码调用,提高代码的可重用性和模块化。
- 参数传递:
- 值传递:将实参的值复制给形参。
第6章 循环控制结构
6.1 循环控制结构概述
- 循环控制结构的作用和重要性
- C语言中常见的循环控制结构类型
6.2 while循环
while
循环的基本语法while
循环的执行流程while
循环的示例代码及解析
6.3 do-while循环
do-while
循环的基本语法do-while
循环与while
循环的区别do-while
循环的示例代码及解析
6.4 for循环
for
循环的基本语法for
循环的执行流程for
循环中的三个表达式for
循环的嵌套for
循环的示例代码及解析
6.5 循环控制语句
break
语句的作用和使用场景continue
语句的作用和使用场景break
和continue
语句在循环中的示例代码及解析
6.6 循环结构中的常见问题
- 循环变量未正确初始化
- 循环条件设置不当导致死循环或循环次数不足
- 循环体中缺少更新循环变量的语句
- 嵌套循环中的逻辑错误
6.7 应用实例
- 使用循环结构实现简单算法(如求和、求积、求最大值、求最小值等)
- 使用循环结构处理数组(如遍历数组、查找数组元素、排序等)
6.8 循环优化与性能提升
- 减少不必要的循环次数
- 优化循环体内的计算过程
- 使用更高效的数据结构和算法
教材学习中的问题和解决过程
问题:在C语言中,continue
语句在while
循环中起到什么作用,并给出一个使用示例?
解答:
在C语言中,continue
语句用于跳过当前循环迭代中的剩余部分,并立即开始下一次循环迭代(如果条件仍然满足)。在while
循环中,continue
语句会导致跳过循环体中continue
之后的所有语句,并直接回到while
循环的条件判断部分。
以下是一个使用continue
语句的while
循环示例:
#include <stdio.h>
int main() {
int i = 0;
while (i < 10) {
i++; // 递增计数器
// 如果i是偶数,则跳过当前迭代并继续下一次循环
if (i % 2 == 0) {
continue;
}
// 只有在i是奇数时才会执行这里的代码
printf("Odd number: %d\n", i);
}
return 0;
}
## 基于AI的学习
![](https://img2024.cnblogs.com/blog/3525066/202411/3525066-20241108214920145-672924028.jpg)
## 学习进度条
| | 代码行数(新增/累积)| 博客量(新增/累积)|学习时间(新增/累积)|重要成长|
| -------- | :----------------:|:----------------:|:---------------: |:-----:|
| 目标 | 5000行 | 30篇 | 400小时 | |
| 第一周 | 000/000 | 2/2 | 07/07 | |
| 第二周 | 000/000 | 1/3 | 07/14 | |
| 第三周 | 000/000 | 1/4 | 07/21 | |
| 第四周 | 050/050 | 1/5 | 07/28 | |
| 第五周 | 050/100 | 1/6 | 07/35 | |
| 第六周 | 070/170 | 1/7 | 07/42 | |
| 第七周 | 080/250 | 1/8 | 07/49 | |