20172327 2017-2018-2 《程序设计与数据结构》第三周学习总结

20172327 2017-2018-2 《程序设计与数据结构》第三周学习总结

教材学习内容总结

  • 讨论对象的创建和使用对象引用变量。
  • 探索String类提供的服务。
  • 描述如何组织成Java标准类库包。
  • 探索随机和数学课提供的服务。
  • 讨论如何使用NumberFormat和DecimalFormat类格式输出。
  • 介绍枚举类型。

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

  • 暂无

代码学习中的问题和解决过程

  • 问题1:在做项目pp0301时,出现了下面这中情况

  • 问题1解决方案:通过仔细的分析,我发现代码是对的,主要是数据输入时出现了错误,这里的姓至少要输入5位,而我在输入名字时,是按我的名字输的,所以只有两位,所以导致输出不了数据。
  • 问题2:在做项目pp0302时,出现下面这个问题

-0 问题2解决方案:经过和前面例题的对比,我发现Math._____之前要用括号将数据类型输入进去,就像(int)(double)等

上周考试错题总结

  • 问题1:Consider the following statement:

    System.out.println("1 big bad wolf\t8 the 3 little pigs\n4 dinner\r2night");

    This statement will output ________ lines of text (思考下面的语句,该语句将输出___行文本)

  • 问题1分析:\t转义序列插入一个选项卡,但将光标放在同一行。\n的转义序列导致产生一个新行,以便“4晚餐”在下一行输出。转义序列\r使回车返回(也就是说,光标移回到左边缘),但是因为它没有开始新的行,“2night”输出超过“4 dinn”,导致第二行看起来像“2nighter”。
  • 问题2:The word println is a(n) (单词println是一个)

    A .method (方法)

    B .reserved word (保留字)

    C .variable (变量)

    D .class (类)

    E .String (字符串)

  • 问题2分析:println这个词作为消息传递给系统。输出对象,所以println是一个方法。
  • 问题3:Of the following types, which one cannot store a numeric value? (在下列数据类型中,哪一个不能存储一个数值型数据?)

    A .int

    B .byte

    C .float

    D .char

    E .all of these can store numeric values (以上所有类型都可以存储数值型数据)

  • 问题3分析:int和byte用于存储整数(整数)和浮点数,用于存储一个实数或浮点值(带小数点的值)。字符存储一个字符,包括字母、标点和数字。然而,存储数字“5”与存储数字5不一样。
  • 问题4: What value will z have if we execute the following assignment statement? float z = 5 / 10; (如果我们执行下面的赋值语句,得到的z将会是什么值?)

    A . z will equal 0.0 (z将等于0.0)

    B . z will equal 0.5 (z将等于0.5)

    C . z will equal 5.0 (z将等于5.0)

    D . z will equal 0.05 (z将等于0.05)

    E . none of the above, a run-time error arises because z is a float and 5 / 10 is an int (以上都不对,因为z是float类型,5 / 10是int类型,所以会发生运行时错误)

  • 问题4分析:因为5和10是整型变量,所以进行除法运算时就会按照整形变量即int型变量进行计算,然后再进行赋值型提升转换,变成0.0.故选择B.
  • 问题5:If x is an int and y is a float, all of the following are legal except which assignment statement? (如果x是一个int类型的数,y是一个float类型的数,下面所有赋值语句中哪个不合法?)

    A . y = x;

    B . x = y;

    C . y = (float) x;

    D . x = (int) y;

    E . all of the above are legal (以上全部合法)

  • 问题5分析:因为x是int,不能只是一个浮点数,除非浮动是扮演一个int。没有明确在b的赋值语句,没有必要因为一个浮动(y)可以接受一个int值(x),C和D,明确投存在法律。
  • 问题6:Which of the following is true regarding the mod operator, %? (关于求余运算符%,下面哪项是正确的?)

    A .It can only be performed on int values and its result is a double (它只能执行int类型的数值,其结果是double类型的数)

    B .It can only be performed on int values and its result is an int (它只能执行int类型的数值,其结果也是int类型的数)

    C .It can only be performed on float or double values and its result is an int (它只能执行float或者double类型的数值,其结果是int类型的数)

    D .It can only be performed on float or double values and its result is a double (它只能执行float或者double类型的数值,其结果是double类型的数)

    E .It can be performed on any numeric values, and the result always is numeric (它可以执行任何类型的数值,其结果始终是数值)

  • 问题6分析:Mod,或modulo,返回由一个分区产生的剩余部分。

    其余的总是数值型的。

    尽管通常使用整数值,但%运算符可用于所有类型的数值数据。

  • 问题7:What value will z have if we execute the following assignment statement?

    int z = 50 / 10.00; (如果我们执行下面的赋值语句,z将得到什么值?)

    A .5

    B .5.0

    C .50

    D .10

    E .none of the above, a run-time error arises because z is an int and 50 / 10.00 is not (以上皆错,因z是一个整型数而50 / 10.00不是,会产生运行时错误)

  • 问题7分析:因为10.00不是int,分裂产生一个双精度值不能存储在int z。为此,划分的结果必须扮演一个int之前存储在z,或价值10.00之前必须先扮演一个int划分。
  • 问题8: Java is a strongly typed language. What is meant by "strongly typed"? (Java是一种强类型语言。“强类型”指的是什么?)

    A . Every variable must have an associated type before you can use it (在使用变量之前,每个变量一定都有一个与之关联的类型)

    B . Variables can be used without declaring their type (变量可以在不声明其类型的情况下使用)

    C . Every variable has a single type associated with it throughout its existence in the program, and the variable can only store values of that type (在程序中,每个变量都有一个与之关联的类型,而变量只能存储该类型的值)

    D . Variables are allowed to change type during their existence in the program as long as the value it currently stores is of the type it is currently declared to be (变量存在于程序中时允许改变类型,只要它当前存储的值是当前声明的类型)

    E . Variables are allowed to change types during their existence in the program but only if the change is to a narrower type (变量存在于程序中时允许改变类型,但只能缩窄转换)

  • 问题8分析:其实错了这道题后我还是没有理解,看到解析。 The reason that strong typing is important is it guarantees that a program that was successfully compiled will not have run-time errors associated with the misuse of types for the variables declared.我姑且翻译一下:强类型很重要的原因是它不会误用已经声明了的类型的变量,保证了程序正常编译而不会运行出错。(在程序中,每个变量都有一个与之关联的类型,而变量只能存储该类型的值),B答案比较合理。
  • 问题9:A variable of type boolean will store either a 0 or a 1. (Boolean类型的变量将被存储为0或1)

    A .true

    B .false

    问题9分析:布尔变量只能存储两个值中的一个,但这些值是保留字true和false。

    在C语言中,c++和c#布尔值被实现为只存储0或1的int变量,但是在Java中,语言的作者选择了真实和错误的布尔文字,因为这被认为是语义上更容易理解的(而且更安全)。

    [代码托管](https://gitee.com/CS-IMIS-23/20172327mrf

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

进入第三周,有点难,程序的样子和上一周有所改变,但要打的代码更多了,发现时间有点不够用,感觉这一周学的状态并不好,所以下一周会花更多的时间在Java的学习中。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 95/95 1/1 18/18
第二周 515/620 1/2 22/40
第三周 290/910 1/3 20/60

尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。

耗时估计的公式:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

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

  • 计划学习时间:25小时
  • 实际学习时间:22小时
  • 改进情况:没有

(有空多看看现代软件工程 课件

软件工程师能力自我评价表)

参考资料

原文地址:https://www.cnblogs.com/mrf1209/p/8643122.html

时间: 2024-10-10 05:13:08

20172327 2017-2018-2 《程序设计与数据结构》第三周学习总结的相关文章

20172327 2017-2018-2 《程序设计与数据结构》第二周学习总结

20172327 2017-2018-2 <程序设计与数据结构>第二周学习总结 教材学习内容总结 字符串的拼接和转义序列的使用 变量的声明和使用 讨论语法及表达式的处理 定义数据转换类型和实现类型转换的机制 创建Scanner类 教材学习中的问题和解决问题 暂无 代码学习中的问题和解决过程 问题1:在提交过程中,突然遇到无法上传的情况 问题2解决方案:通过上网查找,输入git pull之后弹出一个编辑框,选择关闭之后,再次用git push就成功了. 问题2:在按照例题2.10打代码时,Jav

20172327 2018-2019-1 《程序设计与数据结构》第九周学习总结

20172327 2018-2019-1 <程序设计与数据结构>第九周学习总结 教材学习内容总结 第十五章 图 无向图 1.图的概念(非线性结构):允许树中每个结点与多个结点相连,不分父子结点. 2.图由顶点和边组成. 顶点由名字或标号来表示,如:A.B.C.D: 边由连接的定点对来表示,如:(A,B),(C,D),表示两顶点之间有一条边. 3.无向图:顶点之间无序连接. 如:边(A,B)意味着A与B之间的连接是双向的,与(B,A)的含义一样. 4.邻接(邻居):两个顶点之间有边连接. 5.自

20172305 2017-2018-2 《程序设计与数据结构》第一周学习总结

20172305 2017-2018-2 <程序设计与数据结构>第一周学习总结 教材学习内容总结 本书的第一章简单的介绍了计算机和JAVA的历史,基础内容很多,代码的讲解还没用正式进入,本周一直在做敲代码的准备,简单敲了老师给的"Hello World!"以及书后的PP1.3.PP1.4等简单的小程序. 教材学习中的问题和解决过程 问题1:三种不同类型的错误,运行错误和逻辑错误的混淆 问题1解决方案:针对EX1.20的"希望做加法时却做里乘法"进行了网上

20172314 2017-2018-2 《程序设计与数据结构》第一周学习总结

20172314 2017-2018-2 <程序设计与数据结构>第一周学习总结 教材学习内容总结 本书第一章为计算机系统概述,前面是一些计算机相关的基础知识,让我对计算机有了一个总体的认识,不再是一片空白了,对主存储器和CPU影响深刻,主存储器用于保存程序和数据,CPU执行程序指令.在接下来的Java编程语言与程序开发部分,开始看的时候有点迷茫,不是很理解,后来先按照作业中附带的流程完成一些代码托管之后,接触了完整的简单的程序之后,再回过头来看书,看到的一些陌生的名词在脑海中就有了实际的对应,

20172317《程序设计与数据结构》第一周学习总结

20172317 2017-2018-2 <程序设计与数据结构>第一周学习总结 教材学习内容总结 重新温习了一遍计算机的基础 总算了解了局域网广域网因特网万维网这些东西之间的区别了 通过URL的例子知道了网址各个部分的含义 对Java编程语言和程序开发有了一个粗浅的了解 教材学习中的问题和解决过程 问题:练习题SR1.13出现了答案与题目不相符的情况 问题解决方案:题中有个选项是"网卡",答案中没有,反而有个题目没有的选项"调制解调器"(俗称"

20172322 2017-2018-2 《程序设计与数据结构》第二周学习总结

20172322 2017-2018-2 <程序设计与数据结构>第二周学习总结 教材学习内容总结 了解了print与println的区别 了解了字符串的拼接可以用+来完成 了解了转义字符的使用 学会了使用赋值 学会使用部分算术运算符 学会了使用Scanner来实现交互性 教材学习中的问题和解决过程 问题1:在最初接触赋值时对foalt和double的赋值范围不了解 问题1解决方案:使用万能的度娘后看到一个高赞答案后有了了解 问题2:在提前预习时看到2.7图形后敲入的代码无法执行 问题2解决方案

20172328《程序设计与数据结构》第二周学习总结

20172328李馨雨<程序设计与数据结构>第二周学习总结 又到周五,李馨雨同学要开始写博客了.让我们开始吧!(????) 教材学习内容总结 1.首先是String类定义的字符串,然后是print和println的区别.转义字符的学习.(让我印象深刻的\b[回车符]在字符串结尾不显示哈哈,及其更新的\t[换行符],还有在课堂上真正明白了什么是回车.) 2.了解变量.常量.赋值语句.变量:保存数据的内存单元.常量:坚定自己不会变的数据!除非你用java的反射(有点复杂,改权限.去修饰符等等.没实

学号20172328《程序设计与数据结构》第九周学习总结

学号20172328<程序设计与数据结构>第九周学习总结 教材学习内容总结(异常和递归) 第11章:异常 1.[异常处理]: 一个异常:是一个定义非正式情况或错误的对象,由程序或者运行时环境抛出,可以根据需要捕获和处理. 错误:错误类似于异常,但是错误代表不可恢复的问题并且必须捕获处理. 2.[处理异常的三种方法]:①根本不处理异常②当异常发生时处理异常③在程序的某个位置集中处理异常. 3.[未捕获的异常]:如果程序中不处理异常,则程序将非正常的终止运行,并产生关于描述在何处发生什么异常的信息

20172326 《程序设计与数据结构》第九周学习总结

学号 20172326 <程序设计与数据结构>第九周学习总结 教材学习内容总结 异常(exception):定义非正常情况下或错误的情况的对象,由程序或运行时环境抛出,可根据需要进行相应的捕获处理. 异常与错误的区别:错误代表不可恢复的问题并且必须捕获处理.而异常可以忽视,或者使用try语句处理,或调用更高级的方法. 可检测异常与不可检测异常:可检测异常必须由方法捕获,或者必须在可能抛出或传递异常方法的throws子句中列出来.在方法定义的声明头中追加一条throws子句.不可检测异常不需要使

20172322 2017-2018-2 《程序设计与数据结构》第九周学习总结

20172322 2017-2018-2 <程序设计与数据结构>第九周学习总结 教材学习内容总结 异常 学会了使用try-catch来实现未捕获的异常的处理.可以使得异常被捕获进而不导致程序出现错误退出.使用try写入可能产生异常的语句,使用catch来编写在捕获异常后继续执行的代码(可以为空). "未捕获的异常"指在编译过程中不会被编译软件显示异常但是在运行时会出现异常导致程序直接退出,例如:"ArithmeticException"."In