脚本宝典收集整理的这篇文章主要介绍了流程控制,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
为什么要用流程控制
就是有些时候的程序不是一次从上到下运行下来的,它需要我们做出一些判断,这个判断有可能是一次也有可以是两层,所以这种分支结构就要用到if。if的几种用法,if else-if if-else,在编写代码的时候要符合高内聚,低耦合,尽量把公用的代码抽出来。
package com.bdqn.demo2;
import java.util.Scanner;
/***
* 幸运抽奖
* @author lenovo
* 抽奖规则:用户输入4位会员号的百位数字等于随机产生【0-6】之间的一个数字,即为幸运会员
* 题解:四位数字去百位
* 随机生成0-6之间的一个数
*/
public class Demo4 {
public static void main(String[] args) {
System.out.println("=======请输入一个四位数字=======");
Scanner scanner = new Scanner(System.in);
int i = scanner.nextInt();
int baiwei = i/100%10;
//Math.random()生成一个0到1之间的随机数
//0 0.99999*7=(int)6.3333
//System.out.println(Math.random());
int j = (int)(Math.random()*7);
System.out.println("随机数为:"+j);
System.out.println("百位数为"+baiwei);
if (j==baiwei) {
System.out.println("幸运用户");
}else {
System.out.println("没有中奖");
}
}
}
switch必须有确切的,它的表达式里面不能是真或假,因为case要判断表达式里面的值,break是表达式结束,default是如果上面都不满足,执行default。
package com.bdqn.demo2;
import java.util.Scanner;
/***
* 用户输入一个月份,程序自动输出季节,如果是2月那么输出季节闰月
* @author lenovo
*
*/
public class Demo5 {
public static void main(String[] args) {
System.out.println("=======请输出一个月份======");
Scanner scanner = new Scanner(System.in);
int i = scanner.nextInt();
switch(i){
case 1:
case 2:
case 3:
//switch和if可以嵌套使用
if (i==2) {
System.out.println("二月是闰月");
}
System.out.println("春天");
break;
case 4:
case 5:
case 6:
System.out.println("夏天");
break;
case 7:
case 8:
case 9:
System.out.println("秋天");
break;
case 10:
case 11:
case 12:
System.out.println("冬天");
break;
default:
System.out.println("您输入的错误");
}
}
}
每一个case完都要添加一个break证明小节程序结束。
Scanner的包是封装在java.util.Scanner,如果包名倒错,那么程序的意思也将出错。
选择结构只有两种,一个if还有一个switch。
循环结构,while循环。i的初始值为1,i要小于等于100才可以输出100此而不会超出100
package com.bdqn.demo2;
/***
* while循环
* @author lenovo
*
*/
public class Demo6 {
public static void main(String[] args) {
int i = 1;
//i是年 你过的多少和小时???
while (i<=100) {
System.out.println("每天吃三顿,睡7个小时");
i++;
}
}
}
package com.bdqn.demo2;
/***
* while循环
* @author lenovo
*
*/
public class Demo6 {
public static void main(String[] args) {
int i = 1;
int time = 0;
//i是年 你过的多少和小时???
while (i<=100) {
System.out.println("今年我="+i);
time = i*365*24;
System.out.println("第"+i+"年"+"过了多少"+time+"小时");
i++;
}
}
}
package com.bdqn.demo2;
/***
* while循环
* @author lenovo
*
*/
public class Demo6 {
public static void main(String[] args) {
//水仙花数 每位数字上的数的立方和等于这个数字153 1+125+27=153
//输出100到999之间的所有水仙花数,并统计有几个???
int StartNum=100;
int total=0;
while (StartNum<1000) {
int gewei = StartNum%10;
int shiwei = StartNum/10%10;
int baiwei = StartNum/100%10;
int num = gewei*gewei*gewei+shiwei*shiwei*shiwei+baiwei*baiwei*baiwei;
if (num==StartNum) {
total++;
System.out.println(StartNum+"是一个水仙花数");
}
StartNum++;
}
System.out.println("一共有"+total);
}
}
package com.bdqn.demo2;
import java.util.Scanner;
/***
* while do-while
* @author lenovo
*
*/
public class Demo9 {
public static void main(String[] args) {
System.out.println("请输入成绩");
Scanner scanner = new Scanner(System.in);
int i = scanner.nextInt();
if (i<60) {
int j = 1;
while (j<=100) {
System.out.println("好好学习,天天向上!!");
j++;
}
}else {
System.out.println("不需要练习了");
}
}
}
package com.bdqn.demo2;
import java.util.Scanner;
/***
* while
* @author lenovo
* 每次循环去提问是否合格,如果不合格,反复训练
*/
public class Demo8 {
public static void main(String[] args) {
System.out.println("A同学,你明白了么??");
System.out.println("Y(明白)/N(不明白)");
Scanner scanner = new Scanner(System.in);
String answer = scanner.next();
while (answer.equals("N")) {
System.out.println("敲3遍代码,在看看");
System.out.println("A同学,你明白了么??");
System.out.println("Y(明白)/N(不明白)");
answer = scanner.next();
}
System.out.println("======终于明白了=======");
}
}
以上是脚本宝典为你收集整理的流程控制全部内容,希望文章能够帮你解决流程控制所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。