1. 程式人生 > >for語句,if else語句與switch語句

for語句,if else語句與switch語句

if else語句:
if(關係表示式)//括號裡面必須是布林表示式
{語句體1
}
else
{
語句體2
}

執行流程先判斷關係表示式為true還是false,如果是true,則執行語句體1,如果為flase,則執行語句體2.
for語句:
結構;
for(c初始化語句;條件1;增量語句)
{
//程式碼塊1
}
for語句解釋:先執行初始語句,接著條件1的判斷為true,在執行程式碼塊1,然後執行增量語句,然後條件1的判斷,如此迴圈直到條件1為false.

練習:
1,
判斷是否為素數

public static boolean su(int a){

        for
(int i=2;i<a;i++){ if(a%i==0){ return false; } } return true; } boolean c=su(6);

輸出結果為flse,說明6不是素數
2,
比較倆個數的大小

public static int Max2(int a,int b){//void無返回值,
        if(a>b){System.out.println("a>b");
        return
a; } else if(a==b){System.out.println("a==b"); } else{System.out.println("a<b");} return a; } int a =10; int b = 20; Max2(a,b);

輸出結果為a< b

3,階乘計算

public static int jiecheng(int n){
        int t =1;
        for(int b=1;b<=n;b++){
            t=t*b;
        }
        return
t; System.out.println(jiecheng(3)); }

此時計算3的階乘
輸出結果為6.
4,計算1+2+3+…+n

public static int sum(int n){
        int sum=0;
        for(int a=1;a<=n;a++){
            sum=sum+a;

        }return sum;
    }
    System.out.println(sum(10));

此時計算的是1+2+3+…+10的和輸出結果為55.

5,輸出乘法表。

public static void chengfabiao(int n){
        int v;
        for(int c=1;c<=n;c++){
            for(int b=1;b<=n;b++){
                 v=b*c;
                 System.out.println(c+"*"+b+"="+v);
            }
        }

    }
    chengfabiao(5);

此時輸出的是5以內的乘法表,結果如下
這裡寫圖片描述

6,計算斐波那契數列的第n個數

public static int FBNQ(int n){
        int a1=1;
        int a2=0;
        int a3=0;
        for(int i=0;i<n;i++)
        {
            a3=a1+a2;
            a1=a2;
            a2=a3;

        }
        return a3;
    }
    System.out.println(FBNQ(6));

此時輸出的為斐波那契數列打的第六個數,結果為8.

7,計算n以內可以被5整除又可以被3整除的數

public static void fun2(int n){
        int i;
        for( i=0;i<=n;i++)
        {if(i%15!=0){
            continue;}
            System.out.println(i);
        }

        }fun2(20);

結果為15.

8,計算從0+1+2+..+n,當n為多少時,和小於10.

int tmp=0;
        int i;

        for( i=1;;i++){
            tmp=tmp+i;
        if(tmp>10){
            break;

        }

當i等於5時,0到n的值超過了10,所以輸出結果為5.

switch 語句

不能用作switch引數的有:boolean double float long
一般形式:
switch(表示式){
case 常量表達式1: 語句1;//一個case只能表示某一種情況,不能表示多種。
case 常量表達式2: 語句2;

case 常量表達式n: 語句n;
default: 語句n+1;
}

執行過程是先計算表示式的值,再逐個和case 後的常量表達式比較,若不等則繼續往下比較,若一直不等,則執行default後的語句;若等於某一個常量表達式,則從這個表示式後的語句開始執行,並執行後面所有case後的語句。
一般在每一句case後面加入break語句,防止得到多餘的輸出結果。

注意事項:
1.case後的常量表達式不能相同;
2. case後的語句可以有多個且不用花括號括起來;
3. case和default子句的先後順序可以先後變動,default子句可以省略不用;

練習:
題目,
當輸入結果為A時候,輸出80分以上
當輸入結果為B時候,輸出70-80
當輸入結果為C時候,輸出60-70
當輸入結果為D時候,輸出50-60
當輸入結果為E,F時候,輸出沒救了

public static void main(String[] args) {
        char a ='E';
        switch(a){
        case 'A':
            System.out.println("80分以上");break;
        case 'B':
            System.out.println("70-80");break;
        case 'C':
            System.out.println("60-70");break;
        case 'D':
            System.out.println("50-60");break;
        case 'E':
            System.out.println("沒救了");break;
         default:
            System.out.println("沒救了");break;


        }   
    }
}

此時的輸入為E,所以輸出結果為沒救了。

交換倆個數的值

public static void swap(int [] a){

        int c;
         c= a[0];  
         a[0] =a[1] ;  
         a[1] = c; 
         }
         public static void main(String[] args) {
         int a=1;
        int b=2;
        int z[]=new int[2];
        z[0]=a;
        z[1]=b;
        swap(z);
        a=z[0];
        b=z[1];
        System.out.println("a"+"="+a);  
        System.out.println("b"+"="+b); 


    }

結果為
這裡寫圖片描述

final:

final int A=10;//常量,初始化之後不能改變其值 變數名最好大寫 編譯的時候就可以確定
 int z;//區域性變數,定義的時候,必須初始化