精华内容
下载资源
问答
  • 十进制转为二进制

    2014-07-08 00:15:49
    用C语言编写的十进制转为二进制的代码,可根据需要调整为其余进制的转化
  • 十进制转为二进制函数[十进制转为二进制函数]-精品源代码
  • C/C++:十进制转为二进制(n进制转为十进制)

    万次阅读 多人点赞 2016-12-05 23:13:33
    十进制转换为二进制1.在二进制中,奇数的末尾一定是1,而偶数的末尾一定是0. 一般而言,对于数字n,其二进制的最后一位是n%2;这里值得注意的是,计算的第一位数字其实是待输出的二进制数的最后一位,(所以这里...

    I. 十进制转换为二进制

    1.在二进制中,奇数的末尾一定是1,而偶数的末尾一定是0. 一般而言,对于数字n,其二进制的最后一位是n%2;这里值得注意的是,计算的第一位数字其实是待输出的二进制数的最后一位,(所以这里可以定义一个数组来存放二进制数0或1;当然也可以采用函数递归来实现);要获得下一位数字,必须把原数字除以2。如果计算结果是偶数,那么二进制的下一位数就是0;如果是奇数,就是1.

    把上面的话翻译过来,如图:
    这里写图片描述

    #include <stdio.h>
    #include <stdlib.h>
    int main(void)
       {
        int ch[16]={0};  //存放二进制数0和1
        int i,j;
        int variable,index;
        printf ("Please enter a value(0~32767):\n");
        printf (" (Enter any letter to quit.)\n");
        while (scanf ("%d",&variable) == 1) 
                   //scanf()函数输入成功,返回读取的个数
        {
          for (index=0;index<15;index++)
          {
            i=variable%2;  //取2的余数
            j=variable/2;  //取被2整除的数
            variable=j;    //将得到的商赋给变量variable,用来下次求%,获得下一个数
                  
            ch[index]=i;                //将余数存放在数组中
          }
          for(index=15;index>=0;index--)/*这里下标不能从0~15,必须     
          {                             *是15~0;因为我们计算出的第       
           printf ("%d",ch[index]);     *一个数字是待输出二进制数的
            if (index%4 == 0)           *最后一位,而先被存入到了数
           {                            *组中
            printf (" ");               */
               //每输出4个元素,输出一个空格
           }
          }
          printf ("\n");  
        }
       system ("pause");
       return 0;
       }
    

    这里写图片描述

    附:可以用递归来实现:

    #include <stdlib.h>
    #include <stdio.h>
    int main(void)
       {
       void func_binary(unsigned long n);  //函数声明
       unsigned long number;
       printf ("请输入十进制数字:\n");
       while (scanf ("%d",&number) == 1)
          {
            printf ("二进制数为:\n");
            func_binary (number);
            putchar('\n');
            printf ("请再次输入(任意字符结束):\n");
          }
       printf ("Good.\n");
       system ("pause");
       return 0;
       }
    
    void func_binary(unsigned long n)   //定义函数
       {
         int r_value;
         r_value=n%2;
         if (n>=2)
         {
           func_binary (n/2);
         }
         putchar(r_value == 0?'0':'1');
         return;
       }
    

    这里写图片描述

    II.n进制转为十进制
    实现功能:输入任意一个数字,同时说明是几进制,则将其转为十进制数。

    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    #define LENGTH 100
    int main(void)
       {
         long t1;
         int i,n,t,t3;
         char a[LENGTH];    
         printf ("请输入数字:\n");
         gets(a);        //输入n进制数存放到数字a中
         strupr(a);      //将a中的小写字母转为大写字母
         t3=strlen (a);  //求出数组a的长度
         t1=0;
         printf ("请输入进制数(2 or 8 or 16):\n");
         scanf ("%d",&n); //输入的是几进制数
         for (i=0;i<t3;i++)
         {
          if (a[i]-'0'>=n&&a[i]<'A'||a[i]-'A'+10>=n) //判断输入数与进制数是否相符合
          {
           printf ("输入错误.\n");
           exit (0);       //退出程序
          }
          if (a[i]>='0'&&a[i]<='9')  //判断是否为数字
          {
           t=a[i]-'0';
          }
          else if (n>=11&&(a[i]>='A'&&a[i]<='A'+n-10)) //判断是否为字母
           t=a[i]-'A'+10;  //求出字母所代表的十进制数
          t1=t1*n+t;       //求出最终转换成的十进制数
         }
    
         printf ("十进制数是:%ld\n",t1);  //打印结果
        system ("pause");
        return 0;
       }
    

    这里写图片描述




    展开全文
  • 十进制转为二进制基于Javascript语言 var n=15; //十进制转二进制 function fn(n){ var str=''; while(n !=0){ str+=n%2; n =Math.floor(n / 2); } return str.split('').reverse().join('') ;

    十进制转为二进制

    基于Javascript语言

    <script>
    var n=15;
    //十进制转二进制
    function fn(n){
        var str='';
        while(n !=0){
            str+=n%2;
            n =Math.floor(n / 2);
        }
        return str.split('').reverse().join('') ;
    }
    console.log(fn(15));
    </script>

    同理十进制转为k进制(k<10)

    <script>
    //十进制转k进制,k<10
    function fn(n,k){
        var str='';
        while(n !=0){
            str+=n%k;
            n =Math.floor(n / k);
        }
        return str.split('').reverse().join('') ;
    }
    var n=15;
    console.log(fn(15,8));
    </script>

    二进制转为十进制

    //二进制转为十进制
    <script>
    function fn(str){
        var len=str.length;
        var i=0;
        var sum=0;
        while(i<len){
            sum+=str[i++]*fn2(len-i);
        }
        return sum;
    }
    //计算2的n次方
    function fn2(n){
        return (n==0)?1:2*fn2(n-1);
    }
    
    var n=15;
    console.log(fn('1110'));
    </script>
    展开全文
  • 易语言源码 十进制转为二进制源码 使用API
  • 十进制转为二进制 C实现 #include<cstdio> int num[1001]; //保存二进制数 int count=0; //保存二进制个数 void getNum(int number){ //获得保存二进制数的数组 count=0; while(number!=0){ num[count+...

    十进制转为二进制 C实现

    #include<cstdio>
    int num[1001];	//保存二进制数
    int count=0;	//保存二进制个数 
    void getNum(int number){	
        //获得保存二进制数的数组
    	count=0;
    	while(number!=0){
    		num[count++]=number%2;
    		number/=2;
    	}
    }
    void print(){
        //输出二进制数
    	for(int i=count-1;i>=0;i--){
    		printf("%d",num[i]);
    	}
    	printf("\n");
    }
    
    int main(){
    	printf("输入十进制数:\n");
    	int number;
    	while(scanf("%d",&number)!=EOF){
    		getNum(number);
    		print();
    	}
    	return 0;	
    }
    
    展开全文
  • import java.math.BigInteger; public class Hello{ public static void main(String ... //10进制->2进制   String a = "121";//输入数值   BigInteger src = new BigInteger(a);//转换为BigInt
    import java.math.BigInteger;

    public class Hello{
    public static void main(String args[]){
        //10进制->2进制 
      String a = "121";//输入数值 
        BigInteger src = new BigInteger(a);//转换为BigInteger类型 
        System.out.println(src.toString(2));//转换为2进制并输出
     
        //2进制->10进制 
      String b = "1111001";//输入数值 
        BigInteger src1= new BigInteger(b,2);//转换为BigInteger类型 
        System.out.println(src1.toString());//转换为10进制并输出结果 
     
      /*  由此可见,有2点要注意: 
    1. BigInteger的构造函数 
      BigInteger(String src)默认参数字符串为10进制数值 
    BigInteger(String src, int x)第2个参数x是指定第一个参数src的进制类型 

      2. toString方法 
    toString()默认把数值按10进制数值转化为字符串。 
    toString(int x)把数值按参数x的进制转化为字符串*/
    }
    }

    另:
    将十进制转换成二进制的算法如下:
    1.给定一个数;
    2.根据十进制转换二进制的思想:把这个数除以2若为单数则为1,为偶数则为0,直到最后一个数为1为止。所以我们要做的就是用你给定的这个数除以2,如果结果为奇数则r=1,否则r=0;如此循环下去,直到这个数〉=1。
    3.然后把r的值送到一个数组里面。最后把这个数组里面的内容从后面打印出来就可以了。 
    import java.util.Scanner;

    public class Hi {

    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        System.out.println("請輸入一個十進制需要轉換為二進制的正整數");
        int n=sc.nextInt();
      int r;
      int i=0;
      int[] a=new int[20];
      do{
         if(n%2==1)
          r=1;
      else
           r=0;
          a[i]=r;
        n/=2;
         i++;
        }while(n>0);
     
        System.out.println("十進制轉換為二進制後:");
        for(int j=i-1;j>=0;j--){
         System.out.print(a[j]);
        }
    }
    }

     

    另:
    二进制转换成十进制
    import java.util.*;
    public class Hello{
       public static void main(String[] args){
          Scanner sc = new Scanner(System.in);
          System.out.print("请输入一个二进制数");
          int s = sc.nextInt();
          int sum = 0;
          int i = 0;
          while(s != 0){
             sum = (int) (sum + s % 10 * (Math.pow(2,i)));
             s = s / 10;
             i ++;
          }
          System.out.println("转换为十进制后为:" + sum);
       }
    }
    展开全文
  • //10进制->2进制  String a = "-1195";//输入数值  BigInteger src = new BigInteger(a);//转换为BigInteger类型  System.out.println(src.toString(2));//转换为2进制并输出结果  //2进制->10进制  ...
  • 匿名用户1级2017-11-28 回答#首先说明一点,python有现成的函数可以干这个,只不过这个位数不会按照你想要的位数输出而已#这些函数是bin(),hex(),oct(),这些函数自己去看它的源码实现。#个人写的如下defaddone(mods)...
  • 恕某不材,刚想到这种方法~~#十进制转为二进制bin = '1101' showBin = bin[:] dec = 0 while bin != '': dec = dec * 2 + (ord(bin[0]) - ord('0')) bin = bin[1:] print(showBin,'::',dec)
  • 今天遇到一个初学java的朋友问我十进制转为二进制的源码怎么写,说在网上没找到,现在我把贴出来供初学的朋友们参考。 class Ten22  { public static void main(String[] args)  { //十进制数 int ten=16; //临时...
  • 在python2.6以上的版本中自带了将十进制转化为二进制的函数bin()。看一下bin.__doc__怎么说的。>>>print bin.__doc__bin(number) -> stringreturn the binary represiontation of an integer or long ...
  • 这是一套C++代码,是十进制转换为二进制的C++代码。
  • 十进制转为二进制的JAVA代码

    千次阅读 2010-07-15 15:53:00
    十进制转为二进制的JAVA代码

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,263
精华内容 505
热门标签
关键字:

十进制转为二进制