作业信息
这个作业属于哪个课程 | <班级的链接>(2022-2023-1-计算机基础与程序设计) |
---|---|
这个作业要求在哪里 | <作业要求的链接>(2022-2023-1计算机基础与程序设计第八周作业) |
这个作业的目标 | 自学《计算机科学概论》第9章;自学《C语言程序设计》第7章 |
作业正文 | https://www.cnblogs.com/yang-ziran/p/16797962.html |
教材学习内容总结
《计算机科学概论》第九章主要介绍了面向对象方法,(分解过程有四个阶段:头脑风暴、过滤、场景、责任算法);翻译过程(编译器、解释器);程序设计语言范型,有两种主要的范型分别为命令式范型(面向过程、面向对象)、声明式范型(函数式模型、逻辑编程);高级程序设计语言的功能性(布尔表达式、数据归类、输入\输出结构、控制结构);面向对象语言的功能性(封装、类、继承、多态);过程设计与面向对象设计的区别。
《C语言程序设计》第七章主要介绍了分而治之与信息隐藏;函数的定义与调用(函数的定义、调用、原型、返回值);函数封装和防御性程序设计;函数的递归调用和递归函数;变量的作用域和生存期(局部变量、全局变量;自动变量、静态变量、外部变量、寄存器变量);模块化程序设计(模块分解的基本原则、自顶向下和逐步求精、多文件编程);代码风格(代码行、对齐与缩进、空行及代码行内的空格、长行拆分、程序注释)。
教材学习中的问题和解决过程
- 问题1:书中介绍了命令式范式的两种类型,面向过程和面向对象,看了书上的描述,还是有点不太清楚,二者的优缺点是什么?二者具体有哪些应用或者有没有什么具体的例子来更好的理解二者?
- 问题1解决方案:我在网上查找了相关资料,参考https://blog.csdn.net/belongtocode/article/details/100605009?ops_request_misc=&request_id=&biz_id=102&utm_term=%E9%9D%A2%E5%90%91%E8%BF%87%E7%A8%8B%E8%8C%83%E5%BC%8F%20%E5%92%8C%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1%E8%8C%83%E5%BC%8F&utm_medium=distribute.pc_search_result.none-task-blog-2allsobaiduweb~default-3-100605009.142v59pc_rank_34_queryrelevant25,201v3control_2&spm=1018.2226.3001.4187
面向对象的概念和应用已超越了程序设计和软件开发,扩展到如数据库系统、交互式界面、应用结构、应用平台、分布式系统、网络管理结构、CAD技术、人工智能等领域。面向对象是一种对现实世界理解和抽象的方法,是计算机编程技术发展到一定阶段后的产物。
- 问题2:书中介绍了两种声明式范式,分别是函数式模型和逻辑编程,二者有什么区别?
- 问题2解决方案:我在百度上查找了相关的资料,
命令式编程是面向计算机硬件的抽象,有变量(对应着存储单元),赋值语句(获取,存储指令),表达式(内存引用和算术运算)和控制语句(跳转指令),命令式程序就是一个冯诺依曼机的指令序列。
而函数式编程是面向数学的抽象,将计算描述为一种表达式求值,一句话,函数式程序就是一个表达式。
参考原文链接:https://blog.csdn.net/qq_37440870/article/details/126315331
参考https://cloud.tencent.com/developer/ask/sof/113662
上周考试错题总结
- 错题1及原因:Which of the following is made up of a set of nodes called vertices and a set of lines called edges (or arcs)?
A. List
B. Stack
C. Graph
D. Binary search tree
E. Linked structure
(原答案:D) 正确答案:C
二叉检索树有二叉树的形状属性,节点可以具有0个、1个或2个子女。
其他
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 0/0 | 3/3 | 20/20 | |
第二周 | 90/90 | 2 / 5 | 7/27 | |
第三周 | 125/215 | 2 / 7 | 9 / 36 | |
第四周 | 270/ 485 | 2/9 | 9/45 | |
第五周 | 205/690 | 2/11 | 10/55 | |
第六周 | 225/915 | 4/15 | 10/65 | |
第七周 | 220/1135 | 1/16 | 10/75 | |
第八周 | 225/1360 | 1/17 | 8/83 |
-
计划学习时间:10小时
-
实际学习时间:8小时
参考资料
- 《计算机科学概论》
- 《C语言程序设计》