2022-2023-1 20221424《计算机基础与程序设计》第9周学习总结
作业信息
这个作业属于哪个课程 | 2022-2023-1-计算机基础与程序设计 |
---|---|
这个作业要求在哪里 | 2022-2023-1计算机基础与程序设计第一周作业 |
这个作业的目标 | 操作系统责任,内存与进程管理,分时系统,CPU调度,文件、文件系统,文件保护,磁盘调度,一、二维数组及其向函数传递,排序和查找算法 |
作业正文 | https://www.cnblogs.com/Yu-Hongruojir/p/16829960.html |
教材学习内容总结
- 学习了操作系统的相关知识,例如内存,进程与CPU管理
- 学习了操作系统中的文件系统,目录和磁盘调度的相关知识
- 以学生成绩管理系统为例,学习了数组的概念和知识
- 学习了排序和查找算法
教材学习中的问题和解决过程
书中说,不能用变量定义数组长度,但这个代码能正常运行。 我查了资料,说C89不支持这种操作,但C99可以,根据我的实践,在dev里C89也可以支持这种操作。 但是我还是不太懂,我的困惑是到底能不能用变量定义数组长度。
点击查看代码
#include <stdio.h>
int main()
{
int n;
int sum = 0,i;
float average;
printf("请输入学生总人数:");
scanf("%d",&n);
int a[n];
for(i = 0;i < n;i++)
{
printf("请输入第%d位学生的成绩:",i + 1);
scanf("%d",&a[i]);
sum = sum + a[i];
}
average = (float)sum / (float)n;
printf("这%d位学生的平均成绩是%.2f\n",n,average);
return 0;
}
- 问题1:删除文件后,文件在硬盘里还存在吗
- 问题1解决方案:通过查询互联网相关资料得知,“删除”文件,相当于把原文件对应的硬盘区域更改为“可重新写入新文件”状态,只要该区域没有重新写入新文件,该区域的文件还是可以通过其他手法重新得到的。
代码调试中的问题和解决过程
- 问题1:π/2 = 2/1 * 2/3 * 4/3 * 4/5 * 6/5 * 6/7 *...,计算前200项和,我的代码如下:
点击查看代码
#include<stdio.h>
main()
{
double term, result = 1;
int n;
for (n = 2; n < 200; n += 2)
{
term =(n * n)/((n - 1) * (n + 1));
result = result * term;
}
printf("result = %lf\n", 2*result);
}
后来发现,n是整形变量,故term的值才会是1,后来我利用强制类型转换,在分子和分母前面都加上(float),结果就正确了。
上周考试错题总结
- 错题1Which of the following is executed by the Java Virtual machine?
Java是解释型语言,需要JVM,JVM的实质就是把代码编译为JVM能理解的机器语言 - 错题2Which of the following is a program that translates and executes statements in sequence?
机器码按顺序翻译和执行 - 错题3Which of the following creates an object from a class?
从类创建对象的是多态性
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第6周 | 300/1005 | 6/17 | 20/87 | |
第7周 | 350/1305 | 1/18 | 30/117 | |
第8周 | 500/1855 | 3/21 | 27/144 | |
第9周 | 345/2200 | 1/22 | 25/169 |
-
计划学习时间:25小时
-
实际学习时间:25小时