第十周学习总结(2022-2023-1计算机基础与程序设计)(20221407)

学期(如2022-2023-1) 学号(如:20221300) 《计算机基础与程序设计》第X周学习总结

作业信息

课程 2022-2023-1-计算机基础与程序设计
作业要求 2022-2023-1计算机基础与程序设计第十周作业
作业目标 信息系统数据库与SQL 人工智能与专家系统 人工神经网络模拟与离散事件 排队系统 天气与地震模型 图形图像
作业正文 见下

教材学习内容总结

《计算机科学概论》:这几章专业性没有之前那样大了,更偏向于科普性讲述了操作系统中的信息系统,人工智能,以及计算机在各种诸如游戏,天气预测,模型构建中的应用及其应用原理。
《C语言程序设计》:这一章讲了指针这一重要数据类型,并介绍了指针的各种应用。

教材学习中的问题和解决过程

  • 《计算机科学概论》:
    1.计算机删除文件是如何执行的?是真的在把硬盘消磁了吗?
    ————并不是
    解决过程:首先我曾听过汪老师在上课时曾说可以将数组的下限缩小从而删除部分元素,所以当时我就隐约感觉计算机的删除操作不是消磁
    后来,我查了一下

    如何真正删除文件?
    2.操作系统变量PATH究竟是一个什么东西?
    关于环境变量PATH

当时安装VS code 时使用过PATH环境变量,将编译器的路径复制到路径中从而让计算机知道编译器上哪里找。

  • 《C语言程序设计》:
    1.随机数生成的原理?
    这是因为rand函数产生的随机数是伪随机数,它除了被a的值控制外,还被一个隐藏的全局变量seed控制。它实际上是根据a和一个种子按照某个公式推算出来的。

在调用rand函数之前,会先查询是否主动调用过srand(seed)来为伪随机数生成器设定种子,如果有,那么就按照我们的代码设定种子,即初始化seed的起始值,若没有调用srand(seed),那么系统会自动给seed赋初始值,即自动调用srand(1)一次,也就是将seed的值设置为1。如果每次调用rand函数时,种子相同,那么根据公式产生的伪随机数将是相同的。

上面那段代码因为每次运行程序你都没有主动调用srand函数给seed赋值,因此每次都会默认调用srand(1),将seed的值赋值为1,也就是每次seed的值都相同,所以产生的伪随机数不会发生变化。

所以为了让每次产生的随机数不相同,那么我们就需要让每次调用rand函数之前设定的种子不相同,我们可以使用系统时间作种子srand(time(NULL);由于每次运行程序的时间肯定不相同,那么每次设定的种子也就不相同,那么产生的随机数肯定也就不一样了。

引用CSDN博主「北冥有鱼丶丶」的原创文章
原文
阅读这篇文章后我也知道了增加随机性的方法:

PID(Process Identification)操作系统里指进程识别号,也就是进程标识符。操作系统里每打开一个程序都会创建一个进程ID,即PID。

PID(进程控制符)英文全称为Process Identifier,它也属于电工电子类技术术语。
PID是各进程的代号,每个进程有唯一的PID编号。它是进程运行时系统随机分配的,并不代表专门的进程。在运行时PID是不会改变标识符的,但是你终止程序后再运行PID标识符就会被系统回收,就可能会被继续分配给新运行的程序。
含义
只要运行一程序,系统会自动分配一个标识。
是暂时唯一:进程中止后,这个号码就会被回收,并可能被分配给另一个新进程。

只要没有成功运行其他程序,这个PID会继续分配给当前要运行的程序。
如果成功运行一个程序,然后再运行别的程序时,系统会自动分配另一个PID。
是暂时唯一:进程中止后,这个号码就会被回收,并可能被分配给另一个新进程。
只要没有成功运行其他程序,这个PID会继续分配给当前要运行的程序。
如果成功运行一个程序,然后再运行别的程序时,系统会自动分配另一个PID。
操作系统中进程管理的基本原理

代码调试中的问题和解决过程

后来发现do-while语句套在switch语句中容易出现死循环

这里本来按照数学运算应当是正确的,但计算机中存储的浮点数并不是精确值,而是一个近似值。导致运算之后得到了不精确的值。Code::Blocks的编译器能够消除这些问题,但作业网站并不能。

其他

许多明明知道自己应该学但没有学的东西早晚会出来找麻烦的……所以不会就要赶紧补。

上周考试错题总结

1.Which of the following is the technique for keeping multiple programs in main memory at the same time, competing for their chance at the CPU?
A.
Process management
B.
Memory management
C.
Multiprogramming
D.
Timesharing
E.
CPU scheduling
正确答案: C
你的作答: A
2.Which of the following is the logical view provided by the operating system to help users manage secondary memory(二级存储设备)?
A.
File name
B.
File type
C.
File system
D.
File extension
E.
Directory
正确答案: C
你的作答: B
3.Which of the following uses an elevator-like algorithm to service disk requests as it moves the heads from one extreme to the other?
A.
First-come, first-served
B.
SCAN
C.
Shortest-seek-time-first
D.
Latency
E.
Seek time
正确答案: B
你的作答: C
3.Regarding magnetic disk drives, latency is the additional time it takes the platter to rotate into the proper position so that the data can be read or written.
正确答案: 正确
你的作答: 错误

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 200/200 2/2 20/20
第二周 300/500 2/4 18/38
第...周 ... ... ...
第十周 350/1300 1/13 30/90 对getchar有了更深的了解
posted @ 2022-11-06 17:41  北寒带  阅读(71)  评论(0编辑  收藏  举报