(一)学习总结
1.在java中通过Scanner类完成控制台的输入,查阅JDK帮助文档,Scanner类实现基本数据输入的方法是什么?不能只用文字描述,一定要写代码,通过具体实例加以说明。
package s;
import java.util.Scanner;
public class s {
public static void main(String[] args) {
// TODO 自动生成的方法存根
Scanner yao = new Scanner(System.in);
int s = yao.nextInt();
System.out.println("");
}
}
在前面写Scanner的头文件import Java.util.Scanner,然后利用 yao.nextInt接收数据。
2.Random类和Math类的random()方法都能产生随机数,这两种方式有什么区别,各有什么特点呢?查阅JDK帮助文档,并举例加以说明。
Random类产生的随机数再最大值范围内,按照概率均匀分布。
Math类的random()函数返回的值大于等于0.0小于1.0,如果为整数就强制转换为int类型
3.运行下列程序,结果是什么?查阅资料,分析为什么。
public class Test {
public static void main(String args[]) {
double a = 0.1;
double b = 0.1;
double c = 0.1;
if((a + b + c) == 0.3){
System.out.println("等于0.3");
}else {
System.out.println("不等于0.3");
}
}
}
结果为“不等于0.3“
原因为在Java中浮点数的计算会出现精度丢失的问题
改正之后
public class Test {
public static void main(String args[]) {
double a = 0.1;
double b = 0.1;
double c = 0.1;
if((a + b + c) -0.3<1e-6)
{
System.out.println("等于0.3");
}else {
System.out.println("不等于0.3");
}
}
}
4.总结
(1)Java的输入和输出和C语言都有极大的不同,刚开始写有点不熟悉,现在好点了。
(2)在Java中有些函数可以直接调用,比如排序函数Arrays.sort();
(3)输出有两种形式,一种是System.out.println();一种是System.out.printf();前者用与字符的输出,后者跟C语言的输出类似。
(4)在Java输出时字符之间的连接用“+”号
(二)实验总结
1.看商品猜价格
程序设计思路:
利用Random产生随机数,用while循环控制一共可以猜的次数,循环内竞猜价格与随机数进行比较大小,进行输出。
2.万年历
编写四个函数,
1.判断闰年:判断是否闰年的条件。
2.判断某年某月有多少天:先判断是否是闰年,再判断月份。
3.计算输入的年月距1900年1月1日有多少天 :先判断是否为闰年,该年份距1900年多少天,再判断月份为多少天,两数值和就是结果。
4.输出日历表:调用函数第三个,用天数与7取余判断本月第一天为星期几
主函数直接调用即可。
3.评分系统
因为有五位选手,十位评委,如果键盘输入要输入50个值,过于繁琐,利用随机数随机输入。将数值存在二维数组中,最后调用Arrays.sort();进行排序。
(三)代码托管