2024-2025-1 20241305 《计算机基础与程序设计》第十一周学习总结
作业信息
这个作业属于哪个课程 | 2024-2025-1-计算机基础与程序设计(https://edu.cnblogs.com/campus/besti/2024-2025-1-CFAP)) |
---|---|
这个作业要求在哪里 | 2024-2025-1计算机基础与程序设计第十一周作业 |
这个作业的目标 | 1、计算机网络2、网络拓扑3、云计算4、网络安全5、Web6、HTML,CSS,Javascript7、XML |
作业正文 | 本博客链接 |
教材学习内容总结
《计算机科学概论》第十五章和第十六章:
《计算机科学概论》中的“网络与万维网”两章涵盖了计算机科学中网络通信和互联网技术的基础概念。以下是对这些内容的总结:
-
计算机网络:
- 定义:计算机网络是由多个计算机设备组成的系统,它们通过通信线路相互连接,以实现资源共享和信息传递。
- 功能:包括数据传输、资源共享、分布式处理等。
- 协议:网络通信遵循特定的协议,如TCP/IP协议族,确保不同设备间有效通信。
-
网络拓扑:
- 定义:网络拓扑描述了网络中设备如何物理或逻辑上连接。
- 类型:常见的网络拓扑包括星型、环型、总线型、树型和网状型等。
- 影响:网络拓扑影响网络的性能、可靠性和扩展性。
-
云计算:
- 定义:云计算是一种通过互联网提供计算资源(如服务器、存储、数据库、网络、软件等)的服务模式。
- 特点:具有弹性、可扩展性、按需自服务、广泛的网络访问等。
- 服务模型:包括IaaS(基础设施即服务)、PaaS(平台即服务)和SaaS(软件即服务)。
-
网络安全:
- 重要性:保护网络和数据不受未授权访问、破坏、泄露等威胁。
- 技术:包括防火墙、加密、入侵检测系统、安全协议等。
- 法规和政策:涉及数据保护法规和网络安全政策。
-
Web(万维网):
- 定义:万维网是一个通过互联网访问的信息系统,用户可以通过浏览器访问网页。
- 组成:由网页、网站和Web应用程序组成。
- 访问方式:通过统一资源定位器(URL)访问。
-
HTML, CSS, Javascript:
- HTML(超文本标记语言):用于创建网页内容和结构的标记语言。
- CSS(层叠样式表):用于设置网页的视觉和版式样式。
- Javascript:一种脚本编程语言,用于实现网页的交互性。
-
XML:
- 定义:可扩展标记语言(XML)是一种标记语言,用于存储和传输数据。
- 用途:常用于配置文件、数据交换和文档存储。
- 特点:具有自我描述性,易于人类阅读和机器解析。
这些内容构成了计算机网络和万维网的基础知识框架,对于理解现代计算机通信和互联网技术至关重要。学习这些概念有助于掌握如何在网络环境中开发、部署和维护应用程序。
《C语言程序设计》第十章:
《C语言程序设计》第十章关于字符串的内容可以总结如下:
-
字符串字面量:
- 字符串字面量是由一对双引号包围的字符序列,例如
"Hello, World!"
。 - 在C语言中,字符串字面量实际上是字符数组的常量,存储在程序的只读数据段。
- 字符串字面量在末尾隐含一个空字符(
'\0'
),表示字符串的结束。
char str[] = "Hello, World!"; // str是一个字符数组,包含字符串和空字符
- 字符串字面量是由一对双引号包围的字符序列,例如
-
字符串的存储:
- 字符串在C语言中以字符数组的形式存储。
- 字符串的每个字符占用一个数组元素,最后一个元素是空字符(
'\0'
)。 - 字符串数组的大小比字符串长度多1,以存储空字符。
char str[] = "Hello"; // 实际分配了6个字符的空间加上1个空字符
-
字符指针:
- 指向字符的指针可以用于指向字符串。
- 字符串的地址实际上是指向其第一个字符的指针。
- 可以通过字符指针来访问和操作字符串。
char *ptr = "Hello"; // ptr指向字符串"Hello"的第一个字符
-
字符串的访问和输入/输出:
- 通过数组下标访问字符串中的字符。
- 使用
printf
和scanf
函数进行字符串的输入和输出。 printf
使用%s
格式化字符串来输出字符串。scanf
使用%s
格式化字符串来输入字符串,但不包括空格。
printf("%s\n", str); // 输出字符串 scanf("%s", str); // 输入字符串
-
字符串处理函数:
- C标准库提供了许多处理字符串的函数,如
strcpy
、strcat
、strlen
、strcmp
等。 - 这些函数操作字符串,但不改变字符串字面量的值,因为它们是存储在只读内存中的。
char src[] = "Source"; char dest[10]; strcpy(dest, src); // 将src复制到dest
- C标准库提供了许多处理字符串的函数,如
-
向函数传递字符串:
- 可以通过值传递(数组)或引用传递(指针)将字符串传递给函数。
- 传递字符数组时,实际上是传递数组的副本。
- 传递字符指针时,传递的是地址,因此函数内对字符串的修改会影响原字符串。
void printStr(char str[]) { printf("%s\n", str); }
-
从函数返回字符串指针:
- 函数可以返回指向字符的指针。
- 返回的指针可以指向静态分配的内存、动态分配的内存或字符串字面量。
- 返回局部变量的地址是危险的,因为局部变量在函数返回后会被销毁。
char* createStr() { static char str[] = "Dynamic String"; return str; }
以上是《C语言程序设计》第十章关于字符串的主要内容总结,涵盖了字符串的基本操作和处理。通过理解和掌握这些概念,可以有效地在C语言中处理字符串数据。
教材学习中的问题和解决过程(先问 AI)
问题一:网络不同类型的各自作用
解答:网络可以根据不同的标准进行分类,每种类型的网络都有其特定的作用和应用场景。以下是一些常见的网络类型及其作用:
-
局域网(Local Area Network, LAN):
- 作用:连接相对较小的地理区域内(如办公室、学校、家庭)的计算机和其他设备,实现资源共享和通信。
- 特点:通常由组织内部管理,速度较快,延迟低。
-
广域网(Wide Area Network, WAN):
- 作用:连接覆盖广泛地理区域的网络,如城市、国家或全球范围。
- 特点:跨越更大的地理范围,速度可能较慢,延迟较高,通常由电信公司运营。
-
城域网(Metropolitan Area Network, MAN):
- 作用:连接城市或大都市区域内的网络。
- 特点:覆盖范围介于LAN和WAN之间,可以连接多个LAN。
-
个人区域网(Personal Area Network, PAN):
- 作用:连接个人工作空间内的设备,如智能手机、笔记本电脑和可穿戴设备。
- 特点:非常短距离的无线连接,通常用于个人设备间的通信。
-
互联网(Internet):
- 作用:全球最大的网络,连接世界各地的计算机网络,提供信息检索、电子邮件、在线聊天等多种服务。
- 特点:由无数个网络组成,使用TCP/IP协议族。
-
企业网(Enterprise Network):
- 作用:服务于企业内部的网络,连接企业内部的各个部门和分支机构。
- 特点:通常需要高度的安全性和可靠性,以支持企业运营。
-
校园网(Campus Network):
- 作用:服务于学校或大学校园内的网络,连接教室、图书馆、宿舍等。
- 特点:支持教育和研究活动,提供资源访问和远程教育。
-
无线网络(Wireless Network):
- 作用:通过无线电波连接设备,提供无线上网服务。
- 特点:灵活性高,用户可以在网络覆盖范围内自由移动。
-
有线网络(Wired Network):
- 作用:通过物理介质(如以太网电缆)连接设备。
- 特点:通常提供更稳定和更快的连接速度。
-
虚拟私人网络(Virtual Private Network, VPN):
- 作用:在公共网络上创建一个安全的、加密的连接,模拟私人网络。
- 特点:用于远程访问企业网络或保护个人数据不被截获。
每种网络类型都有其特定的用途和优势,选择合适的网络类型取决于用户的具体需求和应用场景。
问题二:搜索引擎的工作原理
解答:搜索引擎的工作原理可以大致分为以下几个步骤:
-
爬行(Crawling):
- 搜索引擎使用称为“爬虫”(crawlers)或“蜘蛛”(spiders)的自动程序来发现互联网上的网页。
- 爬虫从已知的URL列表开始,访问这些网页,并提取网页上的链接,然后继续访问这些链接指向的网页,如此循环。
-
索引(Indexing):
- 爬虫抓取的网页内容被存储在搜索引擎的数据库中,这个过程称为索引。
- 搜索引擎分析网页内容,提取关键词、元数据、URL、页面结构等信息,并建立索引,以便快速检索。
-
处理(Processing):
- 搜索引擎会对索引的数据进行处理,包括消除重复内容、识别网页质量、评估网页的权威性等。
- 这个过程可能涉及到复杂的算法,如PageRank(谷歌早期使用的一种算法)等,以确定网页的重要性和相关性。
-
排名(Ranking):
- 当用户输入查询时,搜索引擎会根据查询的关键词,从索引中找到所有相关的网页。
- 然后,搜索引擎使用排名算法对这些网页进行排序,以确定哪些结果最相关,应该显示在搜索结果的顶部。
-
检索(Retrieval):
- 用户看到的结果就是搜索引擎根据排名算法检索并展示的网页列表。
- 用户可以点击这些链接访问网页。
-
用户界面(User Interface):
- 搜索引擎还提供了用户界面,允许用户输入查询并显示搜索结果。
- 用户界面还包括对搜索结果的过滤、排序和呈现方式的控制。
-
反馈和学习(Feedback and Learning):
- 用户与搜索引擎的互动(如点击搜索结果)为搜索引擎提供了反馈,帮助其改进算法。
- 搜索引擎会持续学习,通过分析用户行为来优化搜索结果的相关性和准确性。
-
缓存(Caching):
- 为了提高效率,搜索引擎会缓存热门网页的副本,这样当用户请求时可以直接提供,而不需要重新从原始服务器获取。
搜索引擎的工作原理是一个复杂的技术过程,涉及到大量的数据存储、处理和算法优化。随着技术的发展,搜索引擎也在不断进化,以提供更准确、更个性化的搜索结果。
基于AI的学习
代码调试中的问题和解决过程
一:本周进行C语言考试,有道编程题返回数组时出现错误
解决:自己忘记定义的数组score[],返回副函数的时候()里不需要加[],自己对细节没有处理好
二:oj里的题自己编的程序会显示Runtime Error
解决:程序过于复杂,导致很长时间系统不报错,也不能运行
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第十一周 | 700/3000 | 2/15 | 10/195 |
计划学习时间:20h
实际学习时间:18h