解题思路:题目不难,就是转完而精致再转回来,但是题目的描述有点恶心
注意事项:
注意题目中说的是从右端开始的第四到第七位,但是截取出来的数字还是要求从左往右计算的。我注释了很多测试代码,直到最后面看了其他人题解才明白过来
参考代码:
package cn.yzf.clanguageTest;
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
StringBuffer sbuf = new StringBuffer();
sbuf.append(Integer.toBinaryString(n)); //数据存储并转化为二进制
//System.out.println(sbuf.reverse());
sbuf = sbuf.reverse();
String str = sbuf.substring(4,8); //截取
StringBuffer sbf = new StringBuffer();
sbf.append(str);
sbf = sbf.reverse(); //对截取的数字进行逆序
str = sbf.toString();
//String str=sbuf.substring(sbuf.length()-8, sbuf.length()-4); //另一种截取方式
//int a =Integer.parseInt(String.valueOf(str)); //测试二进制数据是否正确
int a =Integer.parseInt(String.valueOf(str),2);
System.out.println(a);
}
}
// =============Dragon be here!==========/
// ┏┓ ┏┓
// ┏┛┻━━━┛┻┓
// ┃ ┃
// ┃ ━ ┃
// ┃ ┳┛ ┗┳ ┃
// ┃ ┃
// ┃ ┻ ┃
// ┃ ┃
// ┗━┓ ┏━┛
// ┃ ┃神兽保佑
// ┃ ┃代码无BUG!
// ┃ ┗━━━┓
// ┃ ┣┓
// ┃ ┏┛
// ┗┓┓┏━┳┓┏┛
// ┃┫┫ ┃┫┫
// ┗┻┛ ┗┻┛
// ━━━━━━神兽出没━━━━━━
0.0分
0 人评分
C语言训练-素数问题 (C语言代码)浏览:990 |
简单的a+b (C语言代码)浏览:667 |
2005年春浙江省计算机等级考试二级C 编程题(1) (C语言代码)浏览:581 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:606 |
罗列完美数 (C语言代码)浏览:490 |
C语言程序设计教程(第三版)课后习题11.8 (C语言代码)浏览:681 |
C二级辅导-等差数列 (C语言代码)浏览:694 |
蛇行矩阵 (C语言代码)浏览:498 |
简单的a+b (C语言代码)浏览:531 |
生日日数 (C语言代码)浏览:1496 |