Menu

Java语言中的程序流程控制

0 Comment

(1. 流程控制

有三种基本技术可以改变程序的控制流程:

A.调用方法 :将导致控制流程离开当前方法,转移到被调用的方法。

B.选择  :   a. if / else 语句

b. switch语句

c. 三目运算

C.循环   :a. while 循环

b. for 循环

c. do / while 循环

注:所有的控制结构都包含了某种类型的布尔判断

(2. 布尔逻辑(布尔值:true, false)

在组合布尔表达式时,有四种类型的逻辑:

A. 和(&&):每个表达式都为真时。

B. 或(||):只要其中的一个表达式为真。

C. 异或

D. 非(!):对一个布尔表达式取反。

(3. 布尔运算符

A.  短路和(&&)

B. 和(&)

C. 短路或(|| )

D. 或(|)

E. 异或(^)

F. 非(!)

(4. 选择语句

A. 单分支语句:if(){}

B. 双分支语句:if(){}else{}

C. 多分支语句:if(){}else if(){}else{}

D. switch 语句:一般用作于等值条件判断

switch(变量){

case 值:语句;break;

case 值:语句;break;

default:

}

注:1.switch语句中只能是byte(字节型)、short(短整型)、int(整型)、char(字符型).

2.每一个case常量表达式都必须不相同

3.case和default位置不固定

(5. 循环语句

A. while: 先判断,后循环

B. do / while : 先循环,后判断,循环至少要执行一次

C. for: 先判断,后循环,它是一种指定次数循环的控制结构

例如1.:有一分数序列:2/1,3/2,5/3…..求出这个数列的前20项之和。

public class One{
public static void main(String[] args){
int den=1;//分母
int num=2;//分子
double sum=0;
int temp=0;
for(int i=0;i<20;i++){
temp=num;
num=den+num;
den=temp;
sum=sum+(double)num/den;
}
System.out.printfln(“20项之和为:”+sum);
// System.out.printf(“20项之和为:%.2f”,sum);
}
}

例如2.随机产生一个0~99之间的随机数,然后开始猜数字游戏

import java.util.Scanner;

public class Three{
public static void main(String[] args){
Scanner input = new Scanner(System.in);

//产生随机数
int random = (int)(Math.random()*100);
System.out.println(random);
int c=0;
int temp=0;
while(c==0){
System.out.print(“请输入你猜测的数字:”);
int num = input.nextInt();

temp++;
if(random==num){
System.out.println(“恭喜你猜对了!”);
c=1;
}
else if(random>num){
System.out.println(“小了点,再猜”);
}
else if(random<num){
System.out.println(“大了点,再猜”);
}
}
System.out.println(“总共猜的次数为:”+temp);
}
}

(6. 跳转语句

A. break语句:可以用于任何循环控制结构,从而使循环立即终止

B. continue语句: a. continue在for循环中,将导致控制流程立即跳到更新语句

b. continue在while和do/while中,控制流程立即跳到布尔表达式

发表评论

电子邮件地址不会被公开。 必填项已用*标注