1211: 中文系素素的困惑

题目描述

素素是ahstu中文系的学生,由于以前所在的高中一直都实施应试教育政策,所以素素在高中时完全没有接触过计算机。为了不成为这个信息时代的文盲,素素决定在大学期间认真学习计算机知识。
要深入了解计算机,必须熟悉计算机的数制转换。但文科出身的素素始终对数制转换搞不清楚,即使对最基本的十进制数转二进制数也感到迷茫。作为信息学院的学生,请你编写程序实现十进制数到二进制数的转换,帮素素解决这个问题。 

输入

输入有多行。
第一行是一个整数N(1 < N < =100),表示一共有N组测试数据。
接下来N行,每行给出一个十进制数 M , M 是一个整数,而且保证输入的数在32位平台下 int 型所能处理的范围之内。

输出

根据每行输入的十进制数 M ,输入它所对应的 32 位二进制数,每个二进制数占一行,即使二进制数前面是0也照样输出。

样例输入复制

4
1
7
10
14

样例输出复制

00000000000000000000000000000001
00000000000000000000000000000111
00000000000000000000000000001010
00000000000000000000000000001110

代码如下:

import java.util.Scanner;

public class Main{
    public static void main(String[] args) {
        Scanner cin=new Scanner(System.in);
        int n=cin.nextInt();
        while(n-->0) {
            int m=cin.nextInt();
            String s="";
            while(m!=0) {
                s=m%2+s;
                m=m/2;
            }
            StringBuffer s1=new StringBuffer(s);
            for(int i=0;i<32-s.length();i++) {
                s1.insert(0,'0');
            }
            System.out.println(s1);
        }
    }
}
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值