Java的循环结构

来源:互联网 发布:中兴 网管软件 编辑:程序博客网 时间:2024/06/05 09:15

今天继续巩固循环结构,是把while和do while更进一步认识了,for语句好像在用的时候随处可见吧,例如排序。

首先work_1是一个简单的for使用,来求摄氏温度和华氏温度的转化。顺便知道两个温度是怎样转化的。

/* * 用for语句按5的增量打印出从摄氏温度到华氏温度的转换表 * 公式:h=c*9/5+32*/public class work_1 {public static void main(String[] args) {int c,h;System.out.println("摄氏温度————华氏温度");for (c=1;c<=50;c+=5){h=c*9/5+32;System.out.println(c+"——————"+h);}}}
for语句就三要素,下面是一次循环的内容。

然后work_2是一个关于while的,这里就慢慢显示出其实用do while也是可以的吧。因为首先初始了一个循环条件。

/* * 用while实现输入1,2,3和其它数字后显示中奖结果 * 循环程序直至输入结束*/public class work_2 {public static void main(String[] args) {Scanner input=new Scanner(System.in);System.out.println("请输入您选择的数字1,2,3,并且0停止抽奖");int num=1;//定义初始值,首次程序可以执行while (num!=0){System.out.println("请输入数字1,2,3");num=input.nextInt();switch (num) {case 1:System.out.println("恭喜获得汽车一辆");break;case 2:System.out.println("恭喜获得笔记本一台");break;case 3:System.out.println("恭喜获得冰箱一台");break;default:System.out.println("真不幸没中奖");break;}}}}
程序如果是循环运行,一开始我还真没想到先把num初始一个值,你看这里while里面又输入num了,是不是怪怪的。

work_3就是一个简单的do while实例,求和。

/* * 用do while来求1到100的和*/public class work_3 {public static void main(String[] args) {int sum=0,i=1;do{sum+=i;i++;}while (i<=100);System.out.println("1+2+3+...+100="+sum);}}
这个真的如今是供初学者学习的题目。

哦当然以后谁要是出题1到100的和是多少,我可以亿分之一秒说出答案:5050。

然后work_4主要是熟悉了break和continue的作用,你看,for语句随叫随用。

public class work_4 {public static void main(String[] args) {int sum=0;for (int i=0;i<5;i++){if (i==3){continue;}sum+=i;}System.out.println("sum="+sum);}}
continue和break吧,break貌似用的次数能胜于continue吧。

以上if里面是break的话,for循环结束,sum=3.

continue的话,跳过成立条件直接进入下一个循环,sum=7.

今天最后一个,我用while写了,然后再看书上的用do while写,对比着看,更有味道哦

import java.util.Random;import java.util.Scanner;public class work_5 {public static void main(String[] args) {Scanner input=new Scanner(System.in);int randNum;int count;int num;Random rand=new Random();randNum=rand.nextInt(100)+1;//产生随机数System.out.println("最终答案:"+randNum);count=0;do{System.out.println("请输入您所猜的数:");num=input.nextInt();if (num>randNum)System.out.println("猜大了,请小点");else if (num<randNum)System.out.println("猜小了,请大点");count++;}while (num!=randNum);//switch也可以这也用switch (count) {case 1:System.out.println("男人不要太快");break;case 2:case 3:case 4:case 5:case 6:System.out.println("这个速度还是可以的");break;default:System.out.println("这么长时间才出来");break;}//System.out.println("猜数开始,请输入您所猜的数:");//num=input.nextInt();//count=1;//while (num!=randNum){//if (num>randNum){//System.out.println("您猜的数大了,请小点。");//count++;//}//else if (num<randNum){//System.out.println("您猜的数小了,请大点。");//count++;//}//else if (num==randNum)//break;//num=input.nextInt();//}//System.out.println("恭喜您猜对了。");//System.out.println("您一共用了["+count+"]次猜对。");}}
自己在用while写的时候,目标是放在怎么输出结果和要求一样,并没有考虑怎么方便高效简洁的写,do while给我很大的教育。并且书上switch的巧妙使用也是值得get。

0 0
原创粉丝点击