2023-2024 20231313《计算机基础与程序设计》第十周学习总结
2023-2024 20231313《计算机基础与程序设计》第十周学习总结
作业 | 速达 |
---|---|
作业课程 | 班级链接 |
作业要求 | 计算机基础与程序设计第十周学习总结 |
作业内容 | 计算机科学概论第12,13,14章《C语言程序设计》第9章并完成云班课测试,信息系统、数据库与SQL、人工智能与专家系统、人工神经网络、模拟与离散事件、排队系统、天气与地震模型、图形图像 |
作业正文 | 我的作业 |
教材总结
总结
《计算机科学概论》:信息编码与数据存储、计算机体系结构:这部分详细介绍了计算机的硬件组成,包括CPU、主存储器和海量存储器,以及它们之间的通信方式,操作系统:操作系统是用户与计算机之间的媒介,用户通过操作系统这个软件来使用计算机这台机器,并完成自己的需求,程序设计语言与软件开发:这部分主要探讨了算法设计、问题求解的方法,以及各种程序设计语言的特性,数据库管理系统:这部分主要介绍了关系模型、结构化查询语言以及数据库设计的基本知识,计算机网络:这部分主要介绍了网络的基本概念,如网络类型、网络地址等,人工智能:这部分主要介绍了图灵测试、知识表示、专家系统、神经网络、自然语言处理等人工智能的基本概念,计算理论:这部分主要介绍了抽象的计算理论,如图灵机、停机问题、P类问题、NP类问题、NP完全的问题等。人工智能的定义 人工智能的历史
图灵测试:这是一个测试机器是否具有智能的方法,由艾伦·图灵提出
智能体:智能体是一个能够智能地感知环境、从环境中学习并与环境进行交互的系统
人工智能的应用:人工智能在语音识别、图像识别、自然语言处理、专家系统等领域有广泛的应用
人工智能的未来:人工智能的发展前景广阔,但也面临着伦理、隐私保护等问题
《C语言程序设计》:指针的定义:指针是一种特殊的变量,其值为另一个变量的内存地址。
指针的声明和初始化:例如,int *p; 声明了一个整型指针p,p = &var; 将变量var的地址赋给指针p1。
指针的运算:指针可以进行四种算术运算:++、–、+、-1。
函数指针:函数指针是指向函数的指针1。
指向指针的指针:C语言允许定义指向指针的指针,例如int **pp;1。
NULL指针:在变量声明的时候,如果没有确切的地址可以赋值,为指针变量赋一个NULL值是一个良好的编程习惯1。
指针与数组:数组名是一个指向数组第一个元素的常量指针1。
动态内存分配:通过指针,可以简化一些C编程任务的执行,还有一些任务,如动态内存分配,没有指针是无法执行的。
学习过程中的问题
使用未初始化的指针:如果你创建了一个指针,但没有给它赋值,那么这个指针就是未初始化的。未初始化的指针可能会导致程序崩溃或者其他未知的行为
将值赋给指针:指针应该存储地址,而不是值。如果你试图将一个值赋给一个指针,那么这将是一个错误
跨越数组边界:如果你有两个数组,并试图通过增加指针来从一个数组跳到另一个数组,这是不允许的
忘记重置指针:如果你在循环中使用指针,可能需要在每次迭代开始时重置指针
《计算机科学概论》第12、13、14章
信息系统——组织和分析数据的软件
信息管理和电子制表软件
电子制表软件是一种允许用户用单元格组织和分析数据的程序,单元格是用于存放数据或公式的元素。
电子数据表公式是电子制表软件中用于公式的计算函数,可以通过指定单元格的范围,用端点指定的一组连续单元格。
循环引用是在计算结果时要错误的彼此依赖的一组公式,可能会涉及多个单元格,
数据库管理系统
数据库可以简单定义为结构化的数据集合,数据库管理系统是一组软件和数据的组合,是由物理数据库,数据库引擎,数据库模式组成的软件和数据的组合,数据库管理系统有查询和模式的功能作用,关系模型,用表组织数据和诗句之间的关系的数据库模型,表是数据库记录的集合,记录时构成一个数据库实体的相关的字段集合,字段是数据库记录的一个值,结构化查询语言,用于管理和查询数据的综合性关系数据库语言,即SQL语言用于查询和修改数据库的内容,数据库设计,实体关系建模是设计关系数据库的常用方法,ER图是ER模型的图形化表达,基数约束一次可以存在于实体间地关系数量。
电子商务
计算机应用越来越广地领域是电子商务领域,这种过程是使用万维网买卖物品及服务(就如Amazon亚马逊)
大数据
大数据是非使用传统管理方法处理地大数据集,同时他们还是对多个领域都产生了巨大影响,但又面临着许多挑战,比如数据地多样性,储存数据需要辅助存储器,还包含敏感的个人信息,而保护大数据需要妥善的技术和有条理的规划。
十三章——人工智能
思维机
计算机虽然擅长计算但是不擅长智能的任务,人工智能是研究人类思维建模和应用人类只能的计算机系统的学科;
在这之后,对于智能和思维的成功的答案是图灵测试,是一种行为方法,用于判断一个计算机系统是否是智能的。能够通过图灵测试的计算机具有弱等价性即两个系统在结果是等价的但是实现的方式不同,强等价性说明两个系统使用的是相同内部过程生成结果,AI在各个方面都有问题。
知识表示
语义网是一种知识表示法,重点在于对象之间的关系,表示语义网的是有向图,节点表示的是对象,节点之间的箭头表示关系,箭头的标签说明了关系的类型,检索树是表示游戏中搜友可能的移动的结构
在检索树中存在BFS和DFS算法即深度优先和广度优先
专家系统
基于知识的系统是嵌入并使用一套特定信息的软件系统,专家系统和基于知识的系统是等价的,都是基于人类专家的知识的软件系统,专家系统使用一套规则来指导处理,又叫作基于规则的系统,规则集合又被称为知识库,推理机是专家系统的一部分决定了如何执行规则以及从而会得到什么结论,推理机是处理规则以得出结论的软件
神经网络
人工神经网络是尝试模拟人体神经网络的计算机知识表示法,生物神经网络就是真核细胞生物中通常拥有的神经系统;人工神经网络中元素的有效权是所有输入值和他的权的乘积之和。
自然语言处理
语言识别用计算机识别人类所讲的话,自然语言理解用计算机对人类传达的信息做出合理解释,语音合成用计算机制造出人类的语音,计算机识别理解确定单词的问题共同点在于自然语言,就是说人们用于交流的各种语言,语音合成包括两种基本的解决方法——动态语音生成和录制语音,动态语音合成输出,将人类语音可以划分成特定的声音单元,即音素,语音识别,声纹波表示人声随时间推移的频率变化的图;
机器人学
可移动机器人学研究的是能用于环境移动又一定自治能力的机器人,为减少耗时,包孕体系结构和物理部件。
十四章——模拟、图形学、游戏和其他应用
模拟
模拟设计复杂系统的模型并为观察结果而面对该模型进行实验,模型是真是系统的抽象,是系统中的对象和管理这些对象相互作用的规则的表示,在构造模型中,有两种不同的模拟类型,一种为连续模拟另一种为离散事件模拟,一个把时间看作是连续的,另一个由实体、属性和事件构成;
特殊模型
排队模型:排队模型在电话中会听到类似的案例如“请等待”,等待是一件不可避免的事,排队系统的目的是尽可能地完全利用服务器,使时间处于合理的限度;
气象模型:在天气预测中用到的连续模型,气象模型极其复杂,是以时间相关地流体力学和热力学地偏微分方程为基础的,变量很多,同时也需要有一定数量的数据做基础
计算生物学:计算生物学是通过计算机、应用数学及统计学地知识解决生物学问题的交叉性学科,包括生物信息学、计算生物建模、计算基因组、分子建模和蛋白质结构预测。
计算机图形学
光的工作原理是因为物体可以反射光线使光线进入我们的眼睛,物体形状也会影响物体的外观,对光在物体上的一点地交互的模拟叫做照明模型,而利用照明模型来确定整个物体的外观的处理叫做明暗处理模型嚯嚯敏感处理,该过程叫绘制,复杂对象的建模,是如恶化在合理的时间内生成一个自然现象的真是模拟;
游戏
计算机游戏是一种引入真实世界玩家作为参与者的对某个虚拟世界的计算机模拟,游戏的历史由几十年,在过去的几十年中游戏的含义也在不断地发展,一种分类游戏的方法是通过平台来分类,另一个种分类方法是通过游戏玩法对游戏进行分类,所有的游戏都在成为游戏引擎的软件系统种被创建,通过渲染图形,声音生成,人工智能算法,动画等创建虚拟世界。
《C语言程序设计》第九章
指针的定义、初始化和解引用
- 定义: 指针是一种特殊的变量,其值为另一个变量的地址⁴⁵⁶。例如,
int *p;
定义了一个名为p
的指针,该指针可以指向int
类型的变量。 - 初始化: 指针可以在声明时不进行初始化⁴⁵⁶。也可以通过赋值操作改变指向的对象⁴。例如,如果
int var = 20;
是一个整型变量,那么int *p = &var;
就是初始化,使指针p
指向var
。 - 解引用: 解引用是获取指针指向的变量的值的操作。例如,
*p
就是解引用操作,表示获取p
指向的变量的值。
指针变量做函数参数的参数传递方式
- 指针变量作为函数参数可以将函数外部的地址传递到函数内部,使得在函数内部可以操作函数外部的数据,并且这些数据不会随着函数的结束而被销毁¹³¹⁴¹⁶。例如,下面的函数
swap
使用指针变量作为参数来交换两个整数的值¹³:
void swap(int *p1, int *p2){
int temp;
temp = *p1;
*p1 = *p2;
*p2 = temp;
}
在这个例子中,p1
和 p2
是指向 int
类型的指针,*p1
和 *p2
是解引用操作,表示获取 p1
和 p2
指向的变量的值。
函数指针及其应用
- 函数指针是一种特殊的指针,它指向函数而不是数据⁷⁸⁹[10]¹¹¹²。例如,
int (*p)(int, int);
定义了一个名为p
的函数指针,该指针可以指向一个接受两个int
参数并返回int
的函数⁷。 - 函数指针可以用于构建函数指针数组以及作为函数的返回值⁹。函数指针数组允许我们存储多个函数指针,类似于函数的多态性⁸¹²。例如,我们可以创建一个函数指针数组,然后根据需要选择合适的函数指针进行调用⁸。
- 函数指针也可以作为函数的参数⁹。这在回调函数和事件处理等场景中非常常见⁸。例如,我们定义一个函数
process
,它接受一个函数指针作为参数,并将其用于处理数据⁸。这样,我们可以在调用函数时动态地指定函数的行为⁷⁸⁹[10]¹¹¹²。这意味着可以在不同的时间使用不同的函数⁷。这种方式比起直接调用的方式更加灵活⁷。
基于AI的学习
代码行数(新增/累积) | 学习时间(新增/累积) | |
---|---|---|
目标 | 2000行 | 100小时 |
第一周 | 50/50 | 2/2 |
第二周 | 50/50 | 2/2 |
第三周 | 50/50 | 2/2 |
第四周 | 50/50 | 2/2 |
第五周 | 300/300 | 2/2 |
第六周 | 300/300 | 2/2 |
第七周 | 200/200 | 1/1 |
第八周 | 200/200 | 1/1 |
第九周 | 200/200 | 1/1 |
第十周 | 150/150 | 1/1 |