JAVA实验3答案

更新时间:2023-09-29 20:41:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

GDOU-B-11-112

广东海洋大学学生实验报告书(学生用表)

Java程序设计与开发

实验名称 实验三. 分支与循环语句 课程名称 课程号 16232204

技术 学院(系) 学生姓名

信息学院

学号

专业

计算机科学与技术

实验地点

钟海楼 04019

班级 计科

2015年

实验日期

9月22日

一、实验目的

(1)学习掌握Java中的if-else if-else多分支语句;

(2)学习使用Java 程序中的if-else分支和while循环语句解决问题。

二、实验任务

完成实验三指导上实验1、实验2的实验任务。

三、实验仪器设备和材料

安装有J2SE开发工具的PC机。

四、实验内容和步骤 实验1 回文数

编写一个Java应用程序。用户从键盘输入一个1~9999之间的数,程序将判断这个数是几位数,并判断这个数是否是回文数。

代码如下: Number.java

import java.util.Scanner; public class Number{

public static void main(String args[]){ int number=0,d5,d4,d3,d2,d1;

Scanner reader=new Scanner(System.in);

System.out.println(\输入一个1至99999之间的数\ number=reader.nextInt();

if(number>=1&&number<=99999){ d5=number/10000;

d4=number000/1000; d3=number00/100; d2=number0/10; d1=number; if(d5!=0){

System.out.println(number+\是5位数\ if(d5==d1&&d4==d2){

System.out.println(number+\是回文数\ }

else{

System.out.println(number+\不是回文数\ } }

else if(d4!=0){

System.out.println(number+\是4位数\ if(d4==d1&&d3==d2){

System.out.println(number+\是回文数\ }

else{

System.out.println(number+\不是回文数\ } }

else if(d3!=0){

System.out.println(number+\是3位数\ if(d3==d1){

System.out.println(number+\是回文数\ }

else{

System.out.println(number+\不是回文数\ } }

else if(d2!=0){

System.out.println(number+\是2位数\ if(d2==d1){

System.out.println(number+\是回文数\ }

else{

System.out.println(number+\不是回文数\ } }

else if(d1!=0){

System.out.println(number+\是1位数\ System.out.println(number+\是回文数\ } } else

{

System.out.printf(\不在1至99999之间\ } } }

运行结果:

课后的练习

(1) 程序运行时,用户从键盘输入2332,程序提示怎样的提示。

(2) 程序运行时,用户从键盘输入654321,程序提示怎样的提示。

(3) 程序运行时,用户从键盘输入33321,程序提示怎样的提示。

实验2 猜数字游戏

编写一个Java应用程序,实现下列功能: ·程序随机分配客户一个1~100之间的整数。 ·用户输入自己的猜测。

·程序返回提示信息,提示信息分别是“猜大了”、“猜小了”、“猜对了”。 ·用户可根据提示信息再次输入猜测,知道提示信息是“猜对了”。 代码如下:

GuessNumber.java

import java.util.Scanner; import java.util.Random; public class GuessNumber{

public static void main(String args[]){ Scanner reader=new Scanner(System.in); Random random=new Random();

System.out.println(\给你一个1至100之间的整数,请猜测这个数\ int realNumber=random.nextInt(100)+1; int yourGuess=0;

System.out.print(\输入您的猜测:\ yourGuess=reader.nextInt(); while(yourGuess!=realNumber){ if(yourGuess>realNumber){

System.out.print(\猜大了,再输入你的猜测:\ yourGuess=reader.nextInt(); }

else if(yourGuess

System.out.print(\猜小了,再输入你的猜测:\ yourGuess=reader.nextInt(); } }

System.out.println(\猜对了!\ } }

运行结果:

课后的练习

(1) 用“yourGuess>realNumber”替换代码1可以吗?

不可以,如果代替,则会令程序在检测到用户猜测数字大于正确数字时就会提示“猜对了”。

(2) 语句“System.out.println(“猜对了!”);”为何要放在while循环语句之后?

放在while语句的循环体中合理吗?

因为while循环中的退出条件是当用户输入的yourGuess等于realNumber,所以一旦程序正确退出while循环就说明用户输入的数字是正确的,从而提示“猜对了”。如果放在while循环体中,则会在每次用户输入后不管对错都会提示“猜对了”。

成绩 指导教师

孙兵

日期 2015年9月23日

第 页,共 页

注:请用A4纸书写,不够另附纸。

本文来源:https://www.bwwdw.com/article/z3hd.html

Top