cning_123 2016-03-11 14:46 采纳率: 0%
浏览 1595

蓝桥杯 java基础试题关于进制转换的

图片说明
这道题为什么我的代码评测出现错误输入输出啊?可以帮我找找有啥潜在的问题么?谢谢了。
import java.util.Scanner;

public class Main {
public static void from16to10(String str){
int num = 0;
int j=0;
for(int i=str.length()-1;i>=0;i--){

        if(str.charAt(i)<'A'){
            num +=((str.charAt(i)-'0')*Math.pow(16, j));
        }
        else{
            num+=((str.charAt(i)-'A'+10)*Math.pow(16, j));
        }
            j++;
        }


    System.out.println(num);
    }



public static void main(String args[]){
    Scanner sc=new Scanner(System.in);
    String str=sc.nextLine();
    from16to10(str);
}

}这是评测结果显示有一个错误的例子。图片说明

  • 写回答

2条回答

  • threenewbee 2016-03-11 18:49
    关注

    看了下,错误是要求不超过8位,所以需要用uint。超过7ffffff,结果都是2147483647

    评论

报告相同问题?

悬赏问题

  • ¥15 gwas 分析-数据质控之过滤稀有突变中出现的问题
  • ¥15 没有注册类 (异常来自 HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))
  • ¥15 知识蒸馏实战博客问题
  • ¥15 用PLC设计纸袋糊底机送料系统
  • ¥15 simulink仿真中dtc控制永磁同步电机如何控制开关频率
  • ¥15 用C语言输入方程怎么
  • ¥15 网站显示不安全连接问题
  • ¥15 51单片机显示器问题
  • ¥20 关于#qt#的问题:Qt代码的移植问题
  • ¥50 求图像处理的matlab方案