20145331 实验一 "Java开发环境的熟悉"

实验内容

使用JDK和IDE编译、运行简单的Java程序。
题目: 实现四则运算,并进行测试。

编写代码

1、首先第一步就是要输入数据,我参考书上P86的知识建立了Scanner实例来实现,代码如下:

import java.util.Scanner;
......
Scanner scanner =new Scanner(System.in);
System.out.println("请输入两个数");
Double x=scanner.nextDouble();
Double y=scanner.nextDouble()

2、接着就是进行四则运算了,依题意,需要分四种情况,所以选择swicth-case语句来实现,同时定义一个整形变量来划分这四种情况,同时也要考虑在除法中分母不能为0的特殊条件,用if语句实现,代码如下:

int p=scanner.nextInt();
.......
switch (p) {
case 1:
System.out.print("结果为");
System.out.println(a);
break;
case 2:
System.out.print("结果为");
System.out.println(b);
break;
case 3:
System.out.print("结果为");
System.out.println(c);
break;
case 4:
if(y==0)System.out.println("输入数据有误");//分母不可以为0
System.out.print("结果为");
System.out.println(d);
break;
default:System.out.println("错误");

3、将代码补充完整,整体代码如下所示(此处为修改后运行成功的代码,“运行失败”的部分会在后面提到):

import java.util.Scanner; 
public class Main{
    public static void main(String[] args){
        Scanner scanner =new Scanner(System.in);//建立Scanner实例。
        System.out.println("请输入两个数");
        Double x=scanner.nextDouble();
        Double y=scanner.nextDouble();//接受输入数据。
        System.out.println("请选择:1、加法 2、减法 3、乘法 4、除法");
        int p=scanner.nextInt();//接受选择并定义变量,用于下面的switch分支。
   
  int a,b,c,d;
     a=x+y;
     b=x-y;
     c=x*y;
     d=x/y;
    
  
        switch (p) {//建立switch-case结构来实现用户选择的不同运算方法。
        case 1:
        System.out.print("结果为");
        System.out.println(a);
        break;
        case 2:
        System.out.print("结果为");
        System.out.println(b);
        break;
        case 3:
        System.out.print("结果为");
        System.out.println(c);
        break;
        case 4:
        if(y==0)
        System.out.println("输入数据有误");//分母不可为0。
        System.out.print("结果为");
        System.out.println(d);
        break;
        default:System.out.println("错误");
        }
    }
}

调试代码

一开始编译通过,但是运行后没有结果,出现的是空白,代码如下:

    Scanner scanner =new Scanner(System.in);
Double x=scanner.nextDouble();
Double y=scanner.nextDouble();
System.out.println("请输入两个数");
  ......

因为我的代码这一部分是参考教材P86代码的流程,没有注意到逻辑上的先后顺序,即先提示输入两个数,再进行数据的输入,否则运行后就是空白。由于这一部分也没有语法问题(所以我开始也没有检查代码)我在寻找这个简单的问题耗费了我大量时间,以为是我的运行环境出了问题,在不同同学的机子上都出现此问题后,最终一名学霸帮我检查代码后将此问题纠正,给出纠正后的代码:

    Scanner scanner =new Scanner(System.in);
System.out.println("请输入两个数");
Double x=scanner.nextDouble();
Double y=scanner.nextDouble();
  ......
此外,在进行除法运算时,除式的分母不可为0,这属于现实的逻辑问题,因此,在除法运算模块要加入以下代码:
  
   if(y==0)
     System.out.println("输入数据有误");
     System.out.print("结果为");
     System.out.println(d);  
   ......

运行截图

实验心得体会

通过这次实验,我明白代码的编写绝对不是简单的照猫画虎,要联系自己的实际条件和需求;同时代码编译通过也不意味着你大功告成,编译成功只是说明你语法没有问题,而代码的逻辑很有可能存在漏洞,要做出真正好的程序就需要运行代码后再不断完善,我想这也就是实验的目的和实验的必要性吧;除此之外,代码需要切合实际,才算是真正的好代码。

PSP(Personal Software Process)

步骤 耗时 百分比
需求分析  5min 5.5
设计 15min   17
代码实现 20min   22
测试 40min    44
分析总结 10min   11

20145331 实验一 "Java开发环境的熟悉"的更多相关文章

  1. 20145205 实验一 Java开发环境的熟悉

    实验内容 命令行下Java程序开发 IDEA下Java程序开发.调试 练习(通过命令行和Eclipse两种方式实现,在Eclipse下练习调试程序) 实现凯撒密码,并进行测试 实验要求 使用JDK编译 ...

  2. 实验一 Java开发环境的熟悉

    实验一 Java开发环境的熟悉(Linux + Eclipse) 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑.编译.运行.调试Java程序. 实验要求 1.没 ...

  3. 20145308刘昊阳 《Java程序设计》实验一 Java开发环境的熟悉 实验报告

    20145308刘昊阳 <Java程序设计>实验一报告 实验名称 Java开发环境的熟悉 实验内容 使用JDK编译.运行简单的Java程序 2.使用Eclipse 编辑.编译.运行.调试J ...

  4. 实验一Java开发环境的熟悉

    实验一Java开发环境的熟悉 实验内容 •命令行下Java程序开发 •IDEA下Java程序开发.调试 •练习(通过命令行和Eclipse两种方式实现,在Eclipse下练习调试程序) •实现凯撒密码 ...

  5. 20145225《Java程序设计》实验一 Java开发环境的熟悉(Linux + Eclipse)

    20145225<Java程序设计> 实验一 Java开发环境的熟悉(Linux + Eclipse) 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑 ...

  6. 20145208实验一 Java开发环境的熟悉

    20145208实验一 Java开发环境的熟悉 使用JDK编译.运行简单的java程序 命令行下程序开发 在命令行下建立实验目录,然后创建并进入该目录后的子目录. 编译并运行一个代码 使用IDEA 编 ...

  7. 实验一 Java开发环境的熟悉(Linux + Eclipse)

    学号 20175206 实验一 <Java开发环境的熟悉>实验报告 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑.编译.运行.调试Java程序. 实 ...

  8. 实验一 Java开发环境的熟悉(Linux + Idea) 20175301李锦然

    https://gitee.com/ShengHuoZaiDaXue/20175301.git 实验一 Java开发环境的熟悉(Linux + Idea) 实验内容 1.使用JDK编译.运行简单的Ja ...

  9. 2018-2019-2 实验一 Java开发环境的熟悉

    实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用IDEA编辑.编译.运行.调试Java程序 实验知识点 1. JVM.JRE.JDK的安装位置与区别: 2. 命令行运行javac:ja ...

随机推荐

  1. 苹果微信浏览器不能post方式提交数据问题

    form表单中采用post方式提交数据时,在苹果的微信浏览器中无法传递,安卓的可以 如图: 在controller中获取该数据为 null 将表单的提交方式修改为get就能够获取到 现在采用Ajax方 ...

  2. springMVC问题

    网站中springmvc.xml配置: <bean id="viewResolver" class="org.springframework.web.servlet ...

  3. 初级Java面试题 – SSM框架篇

    加入我的QQ群(701974765) 获取更多好用又好玩的软件,还有不定期发放的福利呦(- ̄▽ ̄)- Spring的优点/对Spring的理解 Spring的AOP编程 Spring的IOC Spri ...

  4. hibernate缓存,四种状态

    FlushMode.AUTO:Hibernate判断对象属性有没有改变,是默认的清理模式 FlushMode.COMMIT:在事务结束之前清理Session的缓存,其他任何时候都不清理缓存 Flush ...

  5. Codeforces Round #426 (Div. 2)A题&&B题&&C题

    A. The Useless Toy:http://codeforces.com/contest/834/problem/A 题目意思:给你两个字符,还有一个n,问你旋转n次以后从字符a变成b,是顺时 ...

  6. PHP webservice 的初接触

    webservice 现在是开始流行了,很多业务开启了这个功能.去年接触的一个金融类的项目有类似功能调用.当时没放心思研究,最两天试着接触了下,还真不错的.起步其实挺简单. 服务端的代码 server ...

  7. 华为交换机忘记console的密码,怎么恢复出厂设置

    第一步:一般情况下由于密码忘记我们会被阻挡在交换机telnet远程管理界面之外. 第二步:虽然可以尝试console线连接交换机的控制接口,但是很多时候这个密码也被网络管理员进行了设置,不巧的是如果这 ...

  8. java基础05 选择结构

    选择结构 public class Demo01Change { public static void main(String[] args) { /** * 实现等量的转换 */ int a = 5 ...

  9. leetcode_Basic Calculator II

    题目: Implement a basic calculator to evaluate a simple expression string. The expression string conta ...

  10. POJ-3131-Cubic Eight-Puzzle(双向BFS+哈希)

    Description Let's play a puzzle using eight cubes placed on a 3 × 3 board leaving one empty square. ...