2023-2024-1 20231421 《计算机基础与程序设计》第十一周学习总结

发布时间 2023-12-10 13:10:56作者: 20231421朱葛道一

------------恢复内容开始------------

------------恢复内容开始------------

------------恢复内容开始------------

------------恢复内容开始------------

------------恢复内容开始------------

------------恢复内容开始------------

------------恢复内容开始------------

------------恢复内容开始------------

作业信息

作业要求:https://www.cnblogs.com/rocedu/p/9577842.html#WEEK11

作业目标:自学《计算机科学概论》第十五,十六章、《c语言程序设计》第十章

作业正文:

教材学习内容总结

一、《计算机科学概论》

连网

计算机网络是为通信和共享资源而以各种方式连载一起地一组计算设备,很多电子功能地实现都是依赖底层计算机网络的通信,计算机之间的连接是物理连接,但又存在无线连接的传导数据的方式,计算机网络还存在另一个问题是数据传输率,即数据从网络中的一个地点传输到另一个地点的速率,又被称作是网络的带宽,同时在这个过程中被引用的所有网络设备都被叫做节点或主机;
再一个问题是协议,连网的过程中需要明确的协议来说明如何格式化和处理要传输的数据;其中,一个新的计算领域——客户/服务器模型,就是将计算机的局限性打开了,计算机不再只有面前机器的功能,软件系统更加的广泛,客户发出请求,服务器做出响应;文件服务器是网络中专用于为网络用户存储和管理文件的计算机,Web服务器是专门用来响应网页请求的计算机,客户/服务器模型在今天变得更加复杂而且不止于又基本的请求响应,开始支持并行处理;在计算机网络交互中,有另一种方法是P2P模型(对等网络),这是一种分散的网络,每个节点都进行资源的共享,根据请求的不同,节点不同。
网络的类型
局域网(LAN)是连接较小的范围内少量计算机的网络,局限于一个房间或一个建筑内,管理LANded配置叫做拓扑,环形拓扑是把所有节点连接成一个封闭的环,消息在环内沿着一个方向传播;星型拓扑是以一个叫节点为中心,所有消息都是从中心节点发出,若中心节点出问题了,整个网络通信都会瘫痪;总线拓扑中,所有的节点都连接在一条通信线上,信息可以双向传播,总线上所有节点将检查总线传输的每个信息,若所寻地址不是该节点就会忽略;
广域网(WAN)是连接两个或多个相距较远的局域网的网络,广域网是小范围的网络可以互相通信,LAN有一个特殊节点是网关,用于处理LAN和其他网络之间的通信;网络之间的通信叫做网际互连,如今的Internet本质就是个最大的广域网,遍布全球,是巨大的小网络的集合,小网络采用相同的协议,传递消息到最终目的地;城域网(MAN)指用来覆盖校园或者城市是的大型网络,与WAN相比他更适合特定组织或区域使用
无线和移动计算
无线网络在上述的过程中起到关键性作用,它将至少一个节点做为无线接入点,使得其他设备在没有物理连接的情况下能与其他网络资源交互;蓝牙技术允许设备在短距离内进行交互,蓝牙使用特定带宽的无线电波;
Internet连接,互连的网络的速度决定了我们获取结果的速度,网络系统的延迟是指发送请求和接收响应之间的时间,网络的目的是最小化网络的延迟,决定了网络的最终速度;Internet骨干网指承载Internet通信的一组高速网络,这些网络是由许多公司支持的资源提供的,骨干网使用的是高速率传输率(几十G甚至一百多G),Internet没有真正意义上的中央网络;Internet服务提供商,是给其他人提供Internet访问的公司;
将计算机连接到Internet上的方法是使用电话调制解调器,数字用户线路,线缆调制解调器;第一个是将计算机数据转换成模拟音频信号,方便在电话中传输,一种信号表示零,另一种表示一;而将数据当作数字信号而不是模拟信号就能加快传输率,数字用户线路就是使用常规的铜质电话线,给电话公司的核心办公室传递数字数据,DSL和语音通信使用的频率不同,所以可以共用一根电话线;在家庭连接中最流行的是线缆调制解调器,传输数据的线缆就是传输有线电视信号的线缆;后两种方式都是属于宽带连接,数据传输率大于25Mbps的网络技术,且他们的下载速度可以和上传速度不同,但由于下载的数据量远大于上传的,所以下行速度通常比上行的快;
包交换,是为提供在共享线路上传输数据的有效性,将信息被分割为大小固定有编号的包,每个包独立传输,知道目的地,在目的地出被重新组合成原始信息,在传输时走的线路可以不同,所以到达目的地的顺序可能与发送的不一样,所以需要按正确的顺序排列后组合;包在到达目的地之前,会在各种网络的计算机之间条约,用于指导他们在网络之间传输的设备,叫做路由器,但如果通信线跨越距离很长,线路上将安装中继器,以周期性地加强和传播信号,以防止损失信息
开放式系统与协议
开放式系统是为规范不同类型网络的通信,他的基础是网络体系结构的通用模型,他的实现采用了一系列协议,从而最大化互通性的可能;
网络协议,以太网先于OSI模型,一开始与物理和逻辑总线拓扑进行挂钩,网络协议参照OSI参考模型的基本该奶奶进行分层,这种协议叫做协议栈
TCP/IP,中TCP是传输控制协议,IP是国际协议,它指的是一组协议和支持底层网络通信的工具程序,TCP是基于IP之上的;
IP软件处理的是包通过相互连接的网络传递到最终目的地的路由选择,TCP软件负责将信息分割成包,交给IP传递,目的地机器上的TCP负责将包排序,重新组合成消息,TCP同时要处理发生的错误;UDP是用户数据报协议,是TCP的替代品,TCP牺牲了一定的性能提供了高度可靠性,UDP更快但不可靠;IP程序ping可以用于测试网咯指派的可达性,可以用于测试方式,判断计算机是否运行IP软件,若运行就会对ping请求做出回应;另一种TCP/IP工具叫做跟踪路由程序,用于展示包在到达特定目的节点的过程中经过的路线,跟踪路由器程序输出的是做为中转站的计算机列表,下图为跟踪过程
高层协议,并非建立在TCP/IP的基础上,而是另一种,高层协议有简单邮件传输协议(用于指定电子邮件的传输方式的协议)、文件传输协议(允许一计算机把文件传送到另一个计算机上)、talnet(用于从远程南横计算机登录一个系统的协议)、超文本传输协议(定义WWW文档交换的协议)
MIME类型(网际邮件扩充),与网络协议和标准化相关的概念,应用程序根据分析电子邮件附件的MIME类型,决定如何显示它;
防火墙,是一台软件作为网络的特殊网关,从而保护免受不正当的访问的机器,他会强制执行一个组织的访问控制策略;
网络地址
主机名是Internet上的计算机唯一标识,但是网络软件需要将主机名翻译成对应的IP地址,便于计算机使用
IPv4协议的问题是限定了可以唯一识别的计算机数量,衍生出了Ipv6协议,与使用32位的IPv4协议不同,IPv6使用八个组别的十六位共128位的地址,通常写作十六进制数字来保持长度可控;
域名系统,主机名是由计算机名加域名构成,域名用于说明特定的组织或分组的部分,域名中最后一部分叫做顶级域名
云计算
云计算是计算系统资源由第三方提供并通过互联网来进行管理的范式,云服务的类型很多,公有云,私有云,社区云,混合云,分别用于不同模式功能‘
区块链
区块链是基于网络的技术,最开始用来支持比特币,从而保证不会被改变的交易公开分类账

万维网

在进行具体学习之前先需要明确这几个个概念
包括搜索引擎、即时消息(实时发送短消息的技术)、博客、cookie、Web分析

万维网是一种分布式超媒体系统,由许多互相链接的网页组成。每个网页都可以包含文本、图像、音频、视频等多种媒体类型。
万维网的核心技术是超文本标记语言(HTML)和统一资源定位符(URL)。HTML是一种用于创建网页的标记语言,而URL则是用于定位网页的地址。
万维网的发展离不开浏览器和服务器。浏览器是用户用来访问网页的工具,而服务器则是存储网页并向用户提供服务的计算机。

万维网的发展经历了多个阶段。最初的Web 1.0时代主要是静态网页,用户只能被动地获取信息;随后的Web 2.0时代则强调用户参与,出现了社交网络、博客等互动性更强的应用;现在正在逐渐发展的Web 3.0时代则更注重人工智能和语义网等技术的应用。

万维网的使用带来了许多便利和创新,但也带来了一些问题和挑战,如隐私保护、网络安全、信息真实性等。因此,我们需要在享受网络带来的便利的同时,加强对网络管理和监管的重视。

《C语言程序设计》

C语言中的字符串是由一系列字符组成的,以null字符('\0')结尾。C语言中的字符串可以用字符数组来表示,也可以用指针来表示。

字符串输入输出:可以使用printf()函数和scanf()函数分别进行字符串的输出和输入。格式控制符"%s"用于表示字符串。

字符串指针:可以使用指针来操作字符串。通过指针可以遍历字符串中的每个字符,也可以进行字符串操作。

字符串常量:双引号括起来的字符序列称为字符串常量,例如:"hello"。在C语言中,字符串常量是一个字符数组,以null结尾。

字符串数组:C语言中可以定义字符串数组,例如char str[20],用于存储一组字符串。

字符串输入函数gets()和puts():gets()函数用于从标准输入中读取字符串,puts()函数用于将字符串输出到标准输出。

字符串处理注意事项:在处理字符串时要特别注意数组越界和内存溢出的问题,避免造成程序崩溃或安全漏洞。

字符串的定义:

char str1[] = "Hello, world!"; // 使用字符数组定义字符串
char *str2 = "Hello, world!"; // 使用指针定义字符串

字符串的基本操作:

// 字符串的赋值
char str1[] = "Hello";
char str2[10];
strcpy(str2, str1); // 将str1的值复制给str2

// 字符串的连接
char str3[20] = "Hello";
char str4[] = "World";
strcat(str3, str4); // 将str4连接到str3的末尾

// 字符串的比较
char str5[] = "Hello";
char str6[] = "Hello";
if (strcmp(str5, str6) == 0) {
    printf("str5和str6相等");
} else {
    printf("str5和str6不相等");
}

// 字符串的长度
char str7[] = "Hello";
int len = strlen(str7); // 获取str7的长度

字符串的输入输出:

// 字符串的输入
char str8[20];
scanf("%s", str8); // 从标准输入中读取字符串

// 字符串的输出
char str9[] = "Hello";
printf("%s", str9); // 输出字符串到标准输出

 三,基于AI的学习

 

 

 

 

 

 

 

 

 

 

 

 

 

 

学习进度条

  代码行数 博客数 学习时间
目标 5000 30 400
第一周 200/200 2/2 20/20
第二周 300/300 4/4 28/28
第三周 500/500 6/6 30/30
第四周 500500 8/8 30/30
第五周 600/600 9/9 35/35
第六周 800/800 10/10 40/40
第七周 1000/1000 12/12 45/45
第八周 1200/1200 14/14 48/48
第九周 1400/1400 15/15 52/52
第十周 1500/1500 17/17 56/56
第十一周 1700/1700 18/18 60/60

 

------------恢复内容结束------------

------------恢复内容结束------------

------------恢复内容结束------------

------------恢复内容结束------------

------------恢复内容结束------------

------------恢复内容结束------------

------------恢复内容结束------------

------------恢复内容结束------------