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

发布时间 2023-11-01 20:07:10作者: 20231414王仕琪

学期(如2023-2024-1) 学号(20231414) 《计算机基础与程序设计》第六周学习总结

作业信息

这个作业属于哪个课程 <班级的链接>(2023-2024-1-计算机基础与程序设计
这个作业要求在哪里 <作业要求的链接>(2023-2024-1计算机基础与程序设计第六周作业)
这个作业的目标 <写上具体方面>(Polya如何解决问题,简单类型与组合类型,复合数据结构,查找与排序算法,算法复杂度,递归,代码安全)
作业正文 ... <本博客链接 >https://i.cnblogs.com/posts/edit

教材学习内容总结

《C语言程序设计》
算法,关系运算符与关系表达式,条件语句,条件运算符和条件表达式,逻辑运算符和逻辑表达式,程序测试
《计算机科学概论》
遇到一个问题如何按正确的步骤来设计出一个可执行程序来达到想要的结果,循环,检索,排序,归递算法

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

《C语言程序设计》

  • 问题1:书中有一段代码如下

include

main(void)
{

short x=12,y=8;
printf("%5hd%5hd%5hd\n",!x,x||y,x&&y);
printf("%5hu%5hd%5hd\n",x,x|y,x&y);
printf("%5hd%5hd%5hd\n\n",~x,x|y,x&y);

}
其中有些运算过程我不是很理解

  • 问题1解决方案:询问chatgpt得到如下解释


    《计算机科学概论》
  • 问题2:二分检索和快速排序的区别在哪里
  • 问题2解决方案:询问chatgpt得到如下解释


  • 问题3:冒泡排序速度很慢,这种方法在什么情况下是最佳选择呢
  • 问题3解决方案:询问chatgpt得到如下解释

基于AI的学习

  • 知识点1:


  • 知识点2:

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

  • 问题1:本周实验课所布置的任务中,需要我们编写一个程序可以随机选择加减乘除四种运算的一种,我想到了用rand函数,但是不知道该怎么表示才能让随机选择一个字符
  • 问题1解决方案:询问了chatgpt知道了可以将这四个运算符号分别用数字指代,再使用rand就可以了,此外我询问了其他同学又学到了新的方法,可以表示为char c="+-*/"[rand()%4]十分简洁方便
  • 问题2:在做oj作业的时候,我遇到了要求使用数组来输出不同的角度对应的sin值的问题
  • 问题2解决方案:由于我还没有学过数组,所以在CSDN上大致了解之后完成了这项题目
  • ...

上周考试错题总结

  • 错题1及原因,理解情况
    Which of the following is part of a Pep/9 program instruction?
    A.
    Accumulator
    B.
    Simulator
    C.
    Program counter
    D.
    Specifier
    E.
    Register
    正确答案: D
    你的作答: E
    解析:Specifier属于pep9程序指令的一部分
  • 错题2及原因,理解情况
    Assembly language instructions are executed directly by the hardware of a particular computer.
    正确答案: 错误
    你的作答: 正确
    解析:汇编语言指令由特定计算机的硬件直接执行

其他(感悟、思考等,可选)

学习计算机是一个枯燥有有意思的过程,需要足够的耐心,认真的态度,才能体会到其中的乐趣

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 200/200 2/2 20/20
第二周 300/500 2/4 18/38
第三周 500/1000 3/7 22/60
第四周 300/1300 2/9 30/90

参考:软件工程软件的估计为什么这么难软件工程 估计方法

  • 计划学习时间:10小时

  • 实际学习时间:15小时

  • 改进情况:看书的时候要更加细致认真,多一些独立思考

(有空多看看现代软件工程 课件
软件工程师能力自我评价表
)

参考资料