第3章Java程序流程控制.docx

上传人:b****6 文档编号:7284245 上传时间:2023-01-22 格式:DOCX 页数:13 大小:373.63KB
下载 相关 举报
第3章Java程序流程控制.docx_第1页
第1页 / 共13页
第3章Java程序流程控制.docx_第2页
第2页 / 共13页
第3章Java程序流程控制.docx_第3页
第3页 / 共13页
第3章Java程序流程控制.docx_第4页
第4页 / 共13页
第3章Java程序流程控制.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

第3章Java程序流程控制.docx

《第3章Java程序流程控制.docx》由会员分享,可在线阅读,更多相关《第3章Java程序流程控制.docx(13页珍藏版)》请在冰豆网上搜索。

第3章Java程序流程控制.docx

第3章Java程序流程控制

第3章Java程序流程控制

实验1三种基本程序结构

【实验目的】

(1)掌握Java中顺序语句、选择语句及循环语句的使用。

(2)熟练掌握用三种基本程序结构及相关的变量、表达式、运算符及有关类的方法来解决问题的思想。

【实验要求】

(1)设置MyEclipse的当前工作空间为D:

\java。

(2)在MyProject3项目中创建GuessNumber类,并实现猜数游戏。

(3)编写程序WhileLoop实现用while结构求0~100整数数字之和。

(4)编写程序DoWhileLoop实现用do-while结构求0~100整数数字之和。

(5)编写程序ForLoop实现用for结构求0~100整数数字之和。

(6)求三个数中的最大值和最小值。

【实验内容】

(1)启动MyEclpise并设置MyEclipse的工作空间为D:

\java。

(2)创建MyProject3项目并在该项目创建GuessNumber类,实现猜数游戏。

利用Math.random()方法产生1~100的随机整数,利用JOptionPane.showInputDialog()方法产生一个输入对话框,用户可以输入所猜的数。

若所猜的数比随机生成的数大,则显示“猜大了,再输入你的猜测:

”;若所猜的数比随机生成的数小,则显示“猜小了,再输入你的猜测:

”;若所猜的数正好为随机生成的数,则显示“猜对了!

”。

(3)在MyProject3项目中创建WhileLoop类,用while结构求0~100的整数数字之和。

(4)在MyProject3项目中创建DoWhileLoop类,用do-while结构求0~100的整数数字之和。

(5)在MyProject3项目中创建ForLoop类,用for结构求0~100的整数数字之和。

(6)在MyProject3项目中创建MaxMinDemo类,求给定三个数中的最大值和最小值并输出这两个值。

【实验步骤】

1.设置MyEclipse的工作空间为D:

\java

(1)单击【开始】|【所有程序】|【MyEclipse】|【MyEclipse8.5】选项启动MyEclipse。

(2)在出现的当前工作空间设置对话框中输入“D:

\java”,并按【OK】按钮进入MyEclipse工作界面。

2.创建MyProject3项目并创建GuessNumber类实现猜数游戏

(1)单击【File】|【New】|【JavaProject】选项打开【NewJavaProject】对话框。

在【Projectname】文本框中输入“MyProject3”,单击【Finish】按钮关闭对话框。

(2)单击【File】|【Class】命令打开新建类的对话框,在【Name】文本框中输入“GuessNumber”,并分别选中“publicstaticvoidmain(String[]args)”和“Generatecomments”以自动产生main主方法及程序的相关注释,单击【Finish】按钮。

(3)在代码编辑器中输入以下代码并补全程序段。

(4)运行并调试程序,观察运行结果。

知识提示Math类是数学类,提供了一些常用的数学方法,如求平方根方法sqrt()。

Math.random()方法主要用于生成0~1的随机小数(不包括1)。

Integer.parseInt()方法主要用于将字符串型转换为整型。

3.在MyProject3项目中创建WhileDemo类以实现0~100之和

(1)单击【File】|【Class】选项打开新建类的对话框,在【Name】文本框中输入“WhileDemo”,并分别选中“publicstaticvoidmain(String[]args)”和“Generatecomments”以自动产生main主方法及程序的相关注释,单击【Finish】按钮。

(2)在代码编辑器中输入以下代码并补全程序段。

(3)运行并调试程序,观察运行结果。

4.在MyProject3项目中创建DoWhileDemo类以实现0~100之和

(1)在MyProject3项目中创建DoWhileDemo类。

(2)在代码编辑器中输入以下代码并补全程序段。

(3)运行并调试程序,观察运行结果。

5.在MyProject3项目中创建ForLoop类以实现0~100之和

(1)在MyProject3项目中创建ForLoop类。

(2)在代码编辑器中输入以下代码并补全程序段。

(3)运行并调试程序,观察运行结果。

6.在MyProject3项目中创建MaxMinDemo类,并求三个数的最大值与最小值

(1)在MyProject3项目中创建MaxMinDemo类。

(2)在代码编辑器中输入以下代码并补全程序段。

(3)运行并调试程序,观察运行结果。

7.创建NumDemo类并输出1到1000之间所有可以被3整除又可以被7整除的数

(1)在MyProject3项目中创建NumDemo类。

(2)在代码编辑器中输入以下代码并补全程序段。

(3)运行并调试程序,观察运行结果。

(4)分别使用while和do-while循环语句改写本程序,并调试运行程序。

【扩展练习】

(1)从键盘输入一个字符,若该字符为小写字母,则输出“此字符是小写字母”;若为大写字母,则输出“此字符为大写字母”;否则输出“此字符不是字母”。

知识提示利用BufferedReaderbuf;

buf=newBufferedReader(newInputStreamReader(System.in)));

Stringstr=buf.readLine;

实现从键盘上输入字符,但要注意的是输入的字符均为字符串。

(2)根据变量score中存放的考试分数输出对应的等级。

60分以下为D等;60~69分为C等;70~89分为B等;90~100分为A等。

3.输出九九乘法表的程序,源代码如下:

 

程序运行结果如图3-1所示,思考如何将乘法表的标题行和内容对齐?

试修改程序并运行。

图3-1程序运行结果

(3)计算并输出n的阶乘(设n=10),程序由学生独立完成。

(4)编写程序,输出1~100的所有奇数,程序由学生独立完成。

(提示:

满足表达式(i%2!

=0)的i值为奇数。

(5)编写程序,打印100以内的所有素数,要求每行打印5个素数。

 

实验2数组

【实验目的】

(1)掌握数组的定义及初始化方法。

(2)掌握循环结构与数组相结合解决问题的方法。

(3)理解数组下标和数组元素间的关系。

(4)掌握命令行参数数组的使用args。

【实验要求】

(1)采用多种方式完成一维及二维数组的定义。

(2)利用不等长二维数组打印星号。

(3)利用命令行参数args[0]与args[1]实现参数输出。

(4)利用命令行参数数组args求3个整数的最大值。

【实验内容】

(1)在MyProject3项目中创建ArrayDeclare类,采用多种方式完成一维及二维数组的定义。

(2)在MyProject3项目中创建PrintStar类,主要利用不等长二维数组snow打印5行星号,第1行为1个星号,第2行为3个星号,第三行为5个星号,第4行为7个星号,第5行为9个星号,程序运行结果如图3-2所示。

图3-2程序运行结果

(1)

【实验步骤】

1.一维及二维数组的定义

(1)在MyProject3项目中创建ArrayDeclare类。

(2)在代码编辑器中输入以下代码并补全程序段。

(3)运行并调试程序,在以上代码基础上利用循环对数组元素完成赋值操作。

2.利用不等长二维数组打印星号

(1)在MyProject3项目中创建PrintStar类。

(2)在代码编辑器中输入以下代码并补全程序段。

publicclassPrintStar{

publicstaticvoidmain(String[]args){

int[][]snow=newint[5][];

for(inti=0;i<___________;i++)

snow[i]=new_________________;

for(inti=0;i

for(intj=0;_____________;j++){

snow[i][j]='*';

}

}

intn=1;

for(inti=0;i

for(intk=0;k<______________;k++){

System.out.print("");

}

for(intj=0;j

____________________________;

System.out.println();

________________;

}

}

}

(3)运行并调试程序。

若让输出的星号均靠左对齐,如何修改上面程序段?

(4)若要输出如图3-3所示的图形,应该在原有程序基础上增加哪些代码段?

试修改并调试程序。

图3-3程序运行结果

(2)

(5)将第4步中实现的程序再做修改,实现如图3-4所示的输出效果。

图3-4程序运行结果(3)

3.利用两个命令行参数args[0]与args[1]实现参数输出

(1)在MyProject3项目中创建Say类。

(2)在代码编辑器中输入以下代码:

publicclassSay{

publicstaticvoidmain(Stringargs[]){

Stringname=args[0];

Stringword=args[1];

System.out.println("我想对"+name+"悄悄地说:

"+word);

}

}

(3)运行程序,结果如图3-5所示。

程序在运行过程中出错了,数组下标越界异常,不能正常执行。

图3-5程序运行结果(4)

(4)如图3-6所示,单击【Run】|【RunConfigurations…】选项,打开【RunConfigurations】对话框。

图3-6【RunConfigurations】对话框

(5)在【RunConfigurations】对话框中选择【Arguments】选项卡,在【Programarguments】下的文本框中输入两个参数,如图3-7所示。

单击【Run】命令按钮,运行程序。

图3-7【RunConfigurations】对话框

(6)程序运行结果如图3-8所示。

图3-8程序运行结果

(7)在命令提示符状态下运行本程序,需要单击【开始】|【运行】,打开【运行】对话框,在其中的文本框中输入“cmd”打开命令提示符窗口。

(8)如图3-9所示,输入相应命令进入D:

\java\ch3\MyProject3\src目录。

图3-9命令提示符窗口

 

(9)如图3-10所示,输入命令“javacSay.java”编译文件,然后输入“javaSay妈妈我爱你!

!

”命令运行文件。

其中“妈妈”是第一个命令行参数,送给args[0];“我爱你!

!

”是第二个命令行参数,送给args[1]。

图3-10java命令运行程序

4.利用3个命令行参数求3个整数的最大值

(1)在MyProject3项目中创建NumMax类。

(2)在代码编辑器中输入以下代码:

publicclassNumMax{

publicstaticvoidmain(Stringargs[]){

intmax;

inta=Integer.parseInt(args[0]);

intb=Integer.parseInt(args[1]);

intc=Integer.parseInt(args[2]);

if(a>b&&a>c)

___________;

elseif(b>c)

___________;

else

___________;

System.out.println("三个数中最大的是:

"+max);

}

(3)在MyEclipse环境下运行程序,观察结果。

(4)在命令提示符状态下运行程序,观察结果。

(5)修改程序,完成求解两个命令行参数的最大值和最小值。

【扩展练习】

(1)编程实现求Fibonacci数列的前10个数字。

Fibonacci数列的定义为:

F[1]=1,F[2]=1,…,

F[n]=F[n-1]+F[n-2 ]     (n>=3)

知识提示关键代码如下:

      f[0]=f[1]=1;

      for(i=2;i<10;i++)

           f[i]=f[i-1]+f[i-2];

 

(2)编程:

采用冒泡法实现对数组元素由小到大排序。

知识提示冒泡法排序对相邻的两个元素进行比较,并把小的元素交换到前面。

关键代码如下:

for(i=0;i

             for(j=i+1;j

                    if(intArray[i]>intArray[j]){

                           t=intArray[i];intArray[i]=intArray[j];intArray[j]=t;

                    }

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 法律文书 > 起诉状

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1