Java 01入門題 取數字浮點數 每行一個整數或者浮點數。保證在浮點數範圍內(char類型1和int類型的1相差48)

輸入格式:
每行一個整數或者浮點數。保證在浮點數範圍內。

輸出格式:
整數或者浮點數中的數字之和。題目保證和在整型範圍內。

輸入樣例:

-123.01
234

輸出樣例:

7
9

代碼如下

import java.util.*;
public class Main{
    public static void main(String args[]){   
        Scanner reader = new Scanner(System.in);
        while(true){            
        String a = reader.nextLine();
        int sum = 0;
        char []b = a.toCharArray();
        for(int i = 0; i<b.length; i++){
            if(b[i]>='0'&&b[i]<='9')    
       /*因爲是字符數組,所存的並不是int型而是char類型的數字
       另外,if判斷內容中之所以要大於等於'0'和小於等於'9',是爲鑑別正負數*/
            sum = sum + ((int)b[i]-48); //char類型和int類型的數字相差48
        }
        System.out.println(sum);
        }
    }
}

重複,需要注意的是:

① '1’和1相差了48;

② char強轉int得到的是ASCII碼;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章