zoukankan      html  css  js  c++  java
  • C++之进制转换

    一、十进制,八进制,十六进制间相互转换

    C 语言中8进制,10进制,16进制可以使用其相应的占位符输入或输出。

    有符号十进制整数:%d,

    无符号八进制整数:%o,

    使用十六进制数字0f的无符号十六进制整数:%x,

    使用十六进制数字0f的无符号十六进制整数:%X。

    例子如下:

    #include <iostream>
    
    using namespace std;
    
    int main()
    {
        int num;
        //读入一个十进制数
        scanf_s("%d", &num);
        //输出八进制形式
        printf("%o
    ", num);
        //输出十进制形式
        printf("%d
    ", num);
        //输出十六进制形式
        printf("%x
    ", num);
    
        int num2;
        //读入一个八进制数
        scanf_s("%o", &num2);
        printf("%o
    ", num2);
        printf("%d
    ", num2);
        printf("%x
    ", num2);
    
        return 0;
    }

    二、十进制转换为任意其他进制

    #include <iostream>
    
    using namespace std;
    
    //进制转换函数,转换为几进制N就是几
    void Trans(int num, int N) {
        if (num > N - 1) {
            Trans(num / N, N);
        }
        cout << num % N;
    }
    
    int main()
    {
        int num;
        cin >> num;
        //将num转换为5进制输出
        Trans(num, 5);
        cout << endl;
    
            return 0;
      }
  • 相关阅读:
    LeetCode 275. H-Index II
    LeetCode 274. H-Index
    LeetCode Gray Code
    LeetCode 260. Single Number III
    LeetCode Word Pattern
    LeetCode Nim Game
    LeetCode 128. Longest Consecutive Sequence
    LeetCode 208. Implement Trie (Prefix Tree)
    LeetCode 130. Surrounded Regions
    LeetCode 200. Number of Islands
  • 原文地址:https://www.cnblogs.com/skyeisgood/p/12511698.html
Copyright © 2011-2022 走看看