实 验 报 告
( 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){ 语句块; } 运行时,没有报错,电脑直接开始卡顿, 究其原因是逻辑错误,没有跳出循环,导致其陷入死循环而消耗资源。 |
|||||||||||
五、指导教师评语 |
|||||||||||
成 绩 |
批阅人 |
日 期 |
|||||||||