南京邮电大学java第一次实验报告

 

 

南京邮电大学软件设计实验报告 

 

实 验 报 告

( 2017 / 2018学年 第2学期)

 

 

 

课程名称

JAVA语言程序设计

实验名称

Java集成开发环境的安装与使用、

 Java变量、表达式与控制结构

实验时间

2018

  4

 2

指导单位

       计算机学院软件教学中心

指导教师

              许棣华

 

 

学生姓名

王利国

班级学号

B160209

学院(系)

电子与光学工程学院,微电子学院

专    业

微电子科学与工程

实验名称

Java集成开发环境的安装与使用、 Java变量、表达式与控制结构

指导教师

许棣华

实验类型

上机

实验学时

2

实验时间

 

一、    实验目的

1. 熟练掌握Java开发环境的安装和使用

2. 掌握Java变量、表达式

3. 熟练掌握三大控制结构,会编写相关程序

二、实验环境(实验设备)

1. 每位学生配备计算机一台

2. 计算机需安装好JDK和Eclipse

三、实验内容

1. 从键盘输入3个整数,求最小值并输出。

 import java.util.*;

  /**

 * @Author liguo

 * @Description

 * @Data 2018-03-29 

 */

  public class Test1 {

    public static void main(String[] args) {

        int[] a = new int[3];

        Scanner in = new Scanner( System.in );

        System.out.println("请输入三个整数");

        for (int i = 0; i < 3; i++) {

            a[i] = in.nextInt();

        }

        Arrays.sort( a );

        System.out.println("三个数中最小的数为"+a[0] );

    }

}

  

2. 从键盘输入一个1-7之间的整数(如果输入的数不满足条件,则要求用户重新输入),输出对应的英文单词表达的星期几。

import java.util.Scanner;

  

  /**

 * @Author liguo

 * @Description

 * @Data 2018-03-29

 */

  public class Test2 {

  

    public static void main(String[] args) {

        String[] a = {"Mondy", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"};

  //        for (String str : a)

//            System.out.println( str );

        Scanner in = new Scanner( System.in );

        lab:

        while (true) {

            System.out.println( "请输入一个1到7之间的整数" );

            int temp = in.nextInt();

  

            if (temp >= 1 && temp <= 7) {

                System.out.println( "对应的英文单词表达为" + a[temp - 1] );

                break ;

            }

            else if (temp < 0 || temp > 7)

            continue lab;

        }

    }

}

3. 用三种循环语句来实现输出10~50之间的3的倍数,并规定一行输出5个数。

For循环

import java.util.Scanner;

  

  /**

 * @Author liguo

 * @Description

 * @Data 2018-03-29

 */

  public class Test2 {

  

    public static void main(String[] args) {

        String[] a = {"Mondy", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"};

  //        for (String str : a)

//            System.out.println( str );

        Scanner in = new Scanner( System.in );

        lab:

        while (true) {

            System.out.println( "请输入一个1到7之间的整数" );

            int temp = in.nextInt();

  

            if (temp >= 1 && temp <= 7) {

                System.out.println( "对应的英文单词表达为" + a[temp - 1] );

                break ;

            }

            else if (temp < 0 || temp > 7)

            continue lab;

        }

    }

}

  

Do while 循环

 /**

 * @Author liguo

 * @Description3. 用三种循环语句来实现输出10~50之间的3的倍数,并规定一行输出5个数。

 * @Data 2018-03-29 

 */

  public class Test3 {

  

    public static void main(String[] args) {

        int i = 10;

        int count = 0;

        do {

            if (i % 3 == 0) {

                System.out.print( i + "  " );

                count++;

            }

            if (count % 5 == 0)

                System.out.println();

            i++;

        } while (i <= 50 && i >= 10);

  

    }

}

  

While 循环

/**

 * @Author liguo

 * @Description3. 用三种循环语句来实现输出10~50之间的3的倍数,并规定一行输出5个数。

 * @Data 2018-03-29 

 */

  public class Test3 {

          int i = 10;

        int count = 0;

        while (i <= 50 && i >= 10){

            if (i % 3 == 0) {

                System.out.print( i + "  " );

                count++;

            }

            if (count % 5 == 0)

                System.out.println();

            i++;

        } 

  

    }

}

4. 编写程序,输出100-1000之间的水仙花数。所谓水仙花数是指一个3位数,其各位数字的立方和等于该数本身。

/**

 * @Author liguo

 * @Description 输出100-1000之间的水仙花数。所谓水仙花数是指一个3位数,其各位数字的立方和等于该数本身。

 * @Data 2018-03-29 

 */

  public class Text4 {

  

    public static void main(String[] args) {

        System.out.println( "符合条件的水仙花数为" );

        for (int i = 100; i <= 1000; i++) {

            int a = i / 100;

            int b = i % 100 / 10;

            int c = i % 10;

            if (a * a * a + b * b * b + c * c * c == i) {

                System.out.print( i + "  " );

  

            }

        }

    }

}

  

5. 利用循环语句打印如下图所示的图案。

  /**

 * @Author liguo

 * @Description 利用循环语句打印横7纵4的倒三角形

 * @Data 2018-03-29 

 */

  public class Text5 {

  

    public static void main(String[] args) {

        for (int j = 0; j < 4; j++) {

            for (int i = 0; i < j; i++)

                System.out.print( " " );

            for (int k = 0; k < 7 - 2 * j; k++) {

                System.out.print( "*" );

            }

            System.out.println();

        }

  

    }

}

四、实验小结(包括问题和解决方法、心得体会等)

  运行时的逻辑错误,编译器是无法报出的,得自己调试才能找到。

    逻辑错误:

第二题目,输入相应数字,输出相应的星期数的英文表达。

由于标签的使用必须得套用循环结构,自己添加了

while(true){

语句块;

}

运行时,没有报错,电脑直接开始卡顿,

究其原因是逻辑错误,没有跳出循环,导致其陷入死循环而消耗资源。

    

五、指导教师评语

成  绩

批阅人

日  期

                       

原文地址:https://www.cnblogs.com/liguo-wang/p/8795394.html