亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

朋友們幫我看看出了什么問題

/*
?* 把輸入的一個十進制數輸出為用二進制表示的數
?*
?*/
import java.util.Scanner;
public class CastBinaryX{
?? ?//整數部分轉成二進制的方法
?? ?public static void intCast(int i,StringBuffer buffer){
?? ??? ?for(;i>0;i=i/2){
?? ??? ??? ?buffer.append(i%2);
?? ??? ??? ?System.out.println(i%2);
?? ??? ?}
?? ??? ?buffer.reverse();//實現反轉
?? ?}
?? ?//小數部分轉成二進制的方法
?? ?public static void doubleCast(double k ,StringBuffer buffer){
?? ??? ?for(;k>0.000001;k=k*2){
?? ??? ??? ?buffer.append(".");
?? ??? ??? ?buffer.append((int)(k*2));
?? ??? ??? ?System.out.println((int)(k*2));
?? ??? ?}
?? ?}
?? ?public static void main(String[] args){
?? ??? ?Scanner in = new Scanner(System.in);
?? ??? ?StringBuffer sb = new StringBuffer();
?? ??? ?double num = in.nextDouble();//輸入的是12.125
?? ??? ?intCast((int)num,sb);
?? ??? ?double k= num-(int)num;
?? ??? ?System.out.println(k);
?? ??? ?doubleCast(k,sb);
?? ??? ?System.out.println(sb);
?? ??? ?in.close();?? ??? ?
?? ?}
}

輸出的是:2147483647
2147483647
2147483647
2147483647
2147483647
2147483647
2147483647
2147483647
2147483647
2147483647
2147483647
2147483647
2147483647
2147483647
2147483647
2147483647
2147483647 一直循壞,求幫助,新手一枚

正在回答

1 回答

你的循環里面k沒有設置上界。。。所以才會一直循環。

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

朋友們幫我看看出了什么問題

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號