第二、三周作业

学号 20182325 《数据结构与面向对象程序设计》第2、3周学习总结

教材学习内容总结

  • 打字符串需要加"+"其余直接打。也可分行连接。
  • boolean只有true or false的类型。
  • Scanner类输入先输入创立对象例如Scanner scan = new Scanner(System.in).再凭借此进行输入。如a=scan.nextInt(),注意后面的类型首字母大写。
  • 包>类>方法
  • 用import声明使用类
  • Math是静态方法
  • java.text包有NumberFormat和DecimmalFormat
  • NumberFormat中getCurrencyInstance转化为货币,getPercentInstance转化为百分比。
  • DecimmalFormat可以将数字转化字符串。还可以设置。
  • eg.DecimmalFormat fmt=new DecimmalFormat ("0.###")
  • System.out.println(fmt.format(area))
  • java也有printf
  • enum枚举类及结果自己设,+、-不是标识符不可用。ordinal表示叙述,name表示名字。

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

  • 问题1:对书上类中方法不知道怎么用。
  • 问题1解决方案:询问老师,了解书上写法为前面为类型后面输入方法的关键字。
  • 问题2:如下enum fff{a,b,c}
    fff d,e,f;
    d.name; e.ordinal;
    变量名当做类来用?
  • 问题2解决方案:将d,e,f视为对象,就一样了
  • ...

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

  • 问题1:不停调试编译,放在两个文件夹超麻烦。
  • 问题1解决方案:先就在一个文件夹,完成之后再转移。
  • 问题2:如果字符串只有三个字符,而你要输出5个字符就会溢出。
  • 问题2解决方案:加个测试代码,确保不报错。
  • 问题3:无法正常使用类与方法。
  • 问题3解决方案:1.import java. 2.注意大小写 3.是否创建对象 4.基本数据类型是否错误

代码托管

结果
(statistics.sh脚本的运行结果截图)

上周考试错题总结

  • 错题1:
    • When executing a program, the processor reads each program instruction from (当执行一个程序时,处理器从___读取每个程序指令)
    • 错误选项:gisters stored in the processor (储存在处理器中的寄存器)
    • 正确选项:main memory (主存储器)
    • 分析:寄存器是CPU的组成部分,处理器是从主存储器读取
  • 错题2:
    • Volatility is a property of (易变性是___的性质)
    • 错误选项:software (软件)
    • 正确选项:RAM (随机存储器)
    • 分析:
  • 错题3:
    • The ability to directly obtain a stored item by referencing its address is known as (通过引用地址直接获得存储项的能力被称为___)
    • 错误选项:fetch access (获取访问)
    • 正确选项:random access (随机存取)
    • 分析:
  • 错题4:
    • It is important to dissect a problem into manageable pieces before trying to solve the problem because (试图解决问题之前,把一个问题分解成可控制的几部分是很重要的,因为)
    • 错误选项: all of the above (以上皆是)
    • 正确选项:It is important to dissect a problem into manageable pieces before trying to solve the problem because (试图解决问题之前,把一个问题分解成可控制的几部分是很重要的,因为)
    • 分析:翻了想当然的错误,其他选项看起来有道理,但书上根本没提。
  • 错题5:
  • Java is an example of a(n) (Java是一个___的例子)
  • 错误选项:high-level language (高级语言)
  • 正确选项:both high-level language and fourth generation language (高级语言和第四代语言都是)
  • 分析:学习太死板,虽然书上没有明确提出但意思还是很明确。要灵活变通。
  • 错题6:
  • Which of the following would be a good variable name for the current value of a stock? (下面哪个是关于变量“current value of a stock”的最佳命名?)
  • 错误选项:csv
  • 正确选项: currentStockVal
  • 分析:长度要适中
  • 错题7:
  • In a Java program, dividing by 0 is a syntax error. (在Java程序中,除以0是一个语法错误。)
  • 错误选项:false
  • 正确选项: ture
  • 分析:逻辑错误
  • 错题8:
    • In a Java program, dividing by 0 is a syntax error. (在Java程序中,除以0是一个语法错误。)
    • 错误选项:false
    • 正确选项: ture
    • 分析:逻辑错误
  • 错题9:
    • What is output with the statement System.out.println(x+y); if x and y are int values where x=10 and y=5? (如果x和y是int类型的数值,x=10,y=5,那么语句System.out.println(x+y);的输出是什么?)
    • 错误选项:出错
    • 正确选项: 15
    • 分析:先计算10+5在输出
  • 错题10:
    • A double is wider than a float and a float is wider than an int. (一个double类型的数比float类型的数更宽泛,一个float类型的数比一个int类型的数更宽泛。)
    • 错误选项:false
    • 正确选项: ture
    • 分析:更宽的类型在大小上更大,或者可以存储更大范围的值。double是64位,而float是32位,由于它的存储方式,float可以存储比int大得多的值范围。
  • 错题11:
    • In order to compare int, float and double variables, you can use <, >, ==, !=, <=, >=, but to compare char and String variables, you must use compareTo( ), equals( ) and equalsIgnoreCase( ).
    • 错误选项:ture
    • 正确选项:false
    • 分析:还可以使用<、>、==、!=、<=、>=直接比较char变量,但是必须使用compareTo()、equals()和equalsIgnoreCase()进行任何字符串比较。

结对及互评

评分标准

  1. 正确使用Markdown语法(加1分):
    • 不使用Markdown不加分
    • 有语法错误的不加分(链接打不开,表格不对,列表不正确...)
    • 排版混乱的不加分
  2. 模板中的要素齐全(加1分)
    • 缺少“教材学习中的问题和解决过程”的不加分
    • 缺少“代码调试中的问题和解决过程”的不加分
    • 代码托管不能打开的不加分
    • 缺少“结对及互评”的不能打开的不加分
    • 缺少“上周考试错题总结”的不能加分
    • 缺少“进度条”的不能加分
    • 缺少“参考资料”的不能加分
  3. 教材学习中的问题和解决过程, 一个问题加1分

  4. 代码调试中的问题和解决过程, 一个问题加1分

  5. 本周有效代码超过300分行的(加2分)
    • 一周提交次数少于20次的不加分
  6. 其他加分:
    • 周五前发博客的加1分
    • 感想,体会不假大空的加1分
    • 排版精美的加一分
    • 进度条中记录学习时间与改进情况的加1分
    • 有动手写新代码的加1分
    • 课后选择题有验证的加1分
    • 代码Commit Message规范的加1分
    • 错题学习深入的加1分
    • 点评认真,能指出博客和代码中的问题的加1分
    • 结对学习情况真实可信的加1分
  7. 扣分:
    • 有抄袭的扣至0分
    • 代码作弊的扣至0分
    • 迟交作业的扣至0分

点评模板:

  • 博客中值得学习的或问题:
    • 总结全面到位
    • 运用各种格式,更易于阅读
    • ...
  • 代码中值得学习的或问题:
    • 思想具有普遍性,适用多种状况 。
    • ...
  • 基于评分标准,我给本博客打分:10分。得分情况如下:
  • 符合第一条,第二条,第三条加一分,第四条加一分,
  • 周五前发博客的加1分
  • 感想,体会不假大空的加1分
  • 排版精美的加一分
  • 进度条中记录学习时间与改进情况的加1分
  • 结对学习情况真实可信的加1分
  • 点评认真,能指出博客和代码中的问题的加1分

  • 参考示例

点评过的同学博客和代码

  • 本周结对学习情况
    • 20182319
    • 结对照片QQ截图
    • 结对学习内容
      • 如何调试代码
      • 关于博客编译的错误
      • 互相监督打代码 ,以及当有问题时互相解决。
  • 上周博客互评情况
  • 逐渐渡过基础开始进入真正的java学习和C有很多不同但还不算太吃力。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 7200行 30篇 400小时
第一周 62/62 3/3 18/18
第三周 347/454 4/7 42/60

尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
耗时估计的公式:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

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

  • 计划学习时间:36小时

  • 实际学习时间:42小时

  • 改进情况:比我想象中的更耗时间。

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

参考资料

猜你喜欢

转载自www.cnblogs.com/y775060632/p/11568867.html