Java第一次作业

(一)学习总结

1.在java中通过Scanner类完成控制台的输入,查阅JDK帮助文档,Scanner类实现基本数据输入的方法是什么?不能只用文字描述,一定要写代码,通过具体实例加以说明。

Scanner in =new Scanner(System.in);
int input =in.nextln;
输入的数据保存在in中,要用Scanner,要提前声明import java.util.Scanner,Scanner对于输入的类型没有限制
nextInt() :读取整型数据
nextDouble() :读取双精度数据
next():读取输入的下一个单词
nextLine():读取下一行内容

package suiti;
import java.util.Scanner;
public class suiyi {
 public static void main(String[] args) {
     Scanner in =new Scanner(System.in);
     int input=in.nextInt();
     System.out.print("请输入数据:");
     System.out.println("请输出数据:"+input);
    // TODO Auto-generated method stub

}
}

2.Random类和Math类的random()方法都能产生随机数,这两种方式有什么区别,各有什么特点呢?查阅JDK帮助文档,并举例加以说明。

Math.random()返回double类型的小数,该值>=0.0 且< 1.0,如果要返回100以内的数,需要放大100倍。
Random类产生的随机数,在其最大值范围内,按照概率均匀分布

public static void main(String[] args) {
    Random rand=new Random();
    int x=rand.nextInt(100);
    System.out.println(x);
    // TODO Auto-generated method stub

}
public static void main(String[] args) {
    int x=(int)(Math.random()*100);
            System.out.println(x);
    // TODO Auto-generated method stub

}

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");
        }
    }     
}

不会呀-。-

二、实验总结


1、看商品猜价格
思路:用随机数产生一个商品的价格;
利用for循环进行价格比较;
如果猜对则输出商品价格,并且输出猜了多少次;
如果猜的错误,提示大了还是小了,如果次数超过十次则直接输出商品的价格
问题:当输入商品价格是不合法的时候
解决:用if判断当商品价格不合法时做出提醒

2、万年历 思路:首先判断是否是闰年;

再判断天数为31天、30天的月份;

闰年的2月份和平年的2月份的天数;

3、评分系统
思路:利用数组存放十位选手的五次成绩
去掉最高分和最低分,对剩下的八个成绩求和并求出平均分
最后再对五位选手的成绩进行排序然后输出。

原文地址:https://www.cnblogs.com/jj4529926/p/8597842.html