程序控制语句

程序控制语句

程序控制语句分为三种类型:

  1. 顺序结构
  2. 选择结构
  3. 循环结构                                                   

顺序结构

按照程序从上到下依次执行

例如

public static void main(String[] args){
     int a=2;
     int b=3;
     int c=a+b;
     System.out.print("c is"+ c);
}

选择结构

程序执行到某一部分是,根据判断条件选择接下来要执行的语句。

选择结构所包含的结构又分为:

  1. if结构
  2. if-else if结构
  3. switch结构

if结构

基本结构

........
if(选择条件){
    代码块1
    .....
}else{
    代码块2
    .....
}

if-else if结构

....
if(条件1){
    代码块1
}else if(条件2){
    代码块2
}else{
    代码块3
}
......

注:在理论上else if可以重复无限次,但是一般不介意使用太多。

switch结构

switch语句是一个多项选择的语句

举例

  switch(today){
        case 0:
        todayStr="星期六";
        break;
        case 1:
        todayStr="星期天";
        break;
        case 2:
        todayStr="星期一";
        break;
        case 3:
        todayStr="星期二";
        break;
        case 4:
        todayStr="星期三";
        break;
        case 5:
        todayStr="星期四";
        break;   
        case 6:
        todayStr="星期五";
        break; 
    }

循环结构

循环结构分为两种for循环和while循环,循环分为两种,一种是知道循环次数的、另外一种是知道循环结束条件的。

for循环的基本结构

.....
for(循环初始化;循环条件;循环的步长或周期){
    循环体;
}
....

嵌套循环

.....
for(循环初始化;循环条件;循环周期或步长){
    for(循环初始化;循环条件;循环周期或步长){
            循环体;
    }
}

注:在理论上嵌套循环是可以无限嵌套的,但是一般不介意过多嵌套,使程序过深。

例题

import java.util.Scanner;
class D04_6{
    public static void main(String[] arge){
        for(int i=1;i<=8;i++){
            for(int k=1;k<=8-i;k++){
                System.out.print("    ");
            }
            for(int j=1-i;j<=i-1;j++){
                System.out.printf("%4.0f",Math.pow(2,i-1-Math.abs(j)));
            }
            System.out.println();
        }
    }
}

while循环

while循环基本结构

1.循环的初始化
while(2.循环的继续条件){
    3.循环体
    4.循环的步长
}

while(true){
     1.循环初始化
     2.循环的继续条件
     3.循环体
     4.循环的步长
}

第二种方式看着较为方便简单,但是稍有不注意就会发生死循环

例题

import java.util.Scanner;

class D05_6{
    public static void main(String[]args){
        Scanner scanner =new Scanner(System.in);//提示输入一个数字
        System.out.print("请输入一个数字:");
        int num = scanner.nextInt();
        int sum = 9+sumDigits(num);//调用函数sumDigits
        System.out.print(sum);
    }
    public static int sumDigits(int num) {
        int a=0;
        while(true){//利用循环计算各个位上的数之和
            a+=num%10;
            num=num/10;
            if(num==0){
                break;
            }
        }
        return a;//返回 a
    }
}   
发布了13 篇原创文章 · 获赞 1 · 访问量 243

猜你喜欢

转载自blog.csdn.net/Yi_nian_yu_dian/article/details/104226927