zoukankan      html  css  js  c++  java
  • 进制转换小结

    1.十进制转成R进制。取余,然后倒序输出,注意10-15用A-F表示。

    例如 12(10) == 110(3)

    void itoa(int n, int R){
    	int a[M],i = 0;
    	while(n > 0){
    		a[i++] = n%R;
    		n /= R;
    	}
    	i--;
    	for(i; i >= 0; i--){
    		cout<<a[i];
    	}
    }
    

     2.二进制转换成R进制。取余,然后倒序输出。

    例如:111011001/111=1000011 余100,七进制数4
       1000011/111=1001 余100,七进制数4
       1001/111=1 余10,七进制数2
       1/111=0 余1,七进制数1
       (111011001)2=(1244)7

    (转换成4,8,16进制的时候,先补充0,直接2,3,4位一取,换成十进制数,注意10-15用A-F表示)

    例如: 11101010 (2)  == 1110 1010 == EA (16) 

        11101010 (2)  == 011 101 010 == 352 (8)

           11101010 (2)  == 11 10 10 10 == 3222 (4)

    3.R进制转换成10进制

    abcd(R) == a * pow(R,3) + B * pow(R,2) + C * pow(R,1) + D * pow(R,0)

    4.补充一个c语言里面的进制转换函数 _itoa(int , char *, R)  (在头文件cstdlib里面。  #include<cstdlib>  )

    函数的三个参数,第一个是被转换的数,第二个是转化结果的地址,第三个是目标进制。

    #include <bits/stdc++.h>
    using namespace std;
    
    int main(){
    	char s[100];
    	itoa(15,s,2);
    	cout<<s<<endl;
    	return 0;
    }
    
  • 相关阅读:
    兼容利器之X-UA-Compatible
    SQL Server之游标的基础知识
    SQL 按特定字段值排序
    NodeJS 开篇 牛刀小试
    临时表之IF-ELSE
    css中如何设置字体
    怎么做到不加班?
    C# .net中cookie值为中文时的乱码解决方法
    HTML5商城开发一 楼层滚动加载数据
    QQ浏览器X5内核问题汇总
  • 原文地址:https://www.cnblogs.com/stul/p/9975523.html
Copyright © 2011-2022 走看看