10进制转化为m进制

#include <iostream>
#include <stack>
using namespace std;
int main()
{
   int r, n;
   stack<int>s;
   cin >> n >> r;
   while (n)
   {
      s.push(n % r);
      n /= r;
   }
   while (!s.empty())
   {
      switch (s.top())
    {
    case 10:cout << ‘A‘; break;
    case 11:cout << ‘B‘; break;
    case 12:cout << ‘C‘; break;
    case 13:cout << ‘D‘; break;
    case 14:cout << ‘E‘; break;
    case 15:cout << ‘F‘; break;
    default:cout << s.top(); break;
    }
    s.pop();
   }
   return 0;
}

  

原文地址:https://www.cnblogs.com/zhanghua-322/p/11302383.html

时间: 2024-08-29 08:53:13

10进制转化为m进制的相关文章

16进制转化为2进制 【位运算】

#include <stdio.h> int  main() {    int i,a; while (~scanf("%x", &a)){ for(i=15;i>=0;i--) printf("%1d", a&1<<i?1:0);  //注意优先级,先移位<<,结果再与a按位与 printf("\n"); }return 0; } 16进制转化为2进制 [位运算]

10进制转化为16进制以内的转化

进制转化问题十进制转化为其它进制应该是比较简单的问题,就是一个%和/的问题,模之后再除就ok了 1 int a[1000]; 2 char c[]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'}; 3 int main() 4 { 5 int m,n,i,t,k; 6 printf("十进制数:"); 7 scanf("%d",&n); 8 printf("多少进制

自定义函数实现10进制转化为16进制

把结果都列出来,可以提升代码运行速率 #include<stdio.h> char hex_char(unsigned int n) { switch(n) { case 0: return '0'; case 1: return '1'; case 2: return '2'; case 3: return '3'; case 4: return '4'; case 5: return '5'; case 6: return '6'; case 7: return '7'; case 8:

C语言--通过运算符,实现10进制转化为2进制输出

#include <stdio.h> void changeTo(int n) { // 计算数的位数 int len = sizeof(n) * 8; int temp; int t; for (int i = 0; i < len; i++) { temp = n; temp = temp >> (len-1-i); t = temp & 1; printf("%d",t); } printf("\n"); } int ma

24小时制转化为12小时制

static void Main(string[] args) { while (true) { int t,n; Console.Write("请输入24小时制时间:"); t = Convert.ToInt32(Console.ReadLine()); if (t>0&&t<6) { Console.WriteLine("现在时间是凌晨:"+t+"时"); } else if (t==0||t==24) { Con

数组中hashCode就是内存地址,以及汉字幻化为16进制或10进制

int[] arr4={1,2,3,4,5}; System.out.println("arr4: "+arr4); System.out.println("arr4.hashCode: "+arr4.hashCode()); //将hashCode值转化为16进制的两种方式 System.out.println(Integer.toString(366712642,16));//将整数转化为16进制的数为:15db9742 System.out.println(I

c# 字符串(含有汉字)转化为16进制编码(转)

public static string Str2Hex(string s) { string result = string.Empty; byte[] arrByte = System.Text.Encoding.GetEncoding("GB2312").GetBytes(s); for(int i = 0; i < arrByte.Length; i++) { result += "&#x" + System.Convert.ToString(

给定一个十进制数,将其转化为N进制数-----17年滴滴笔试题

题目:给定一个十进制数M,将其转化为N进制数,其中2<=N<=16,其中N为32为整型数; 输入:M N,如7 2 输出转化结果:111 注意点:考虑负数的情况,记得添加负号: 思路:1. 使用一个辅助栈来存放M对N取余的结果(M%N):   2. 处理余数<=9和>9两种情况,因为按照16进制,>9的数用ABCDEF取代   3. 再更新取余后M的取值:M=M/N:   4. 循环处理2,3两个步骤,直到M=0: 5. 处理最终结果,出栈,直到栈为空: 代码如下: pack

Java 将字节转化为16进制字符串

很多时候我们需要将字节数组转化为16进制字符串来保存,例如做I/O字节流操作的时候,尤其在很多加密的场景中应用都比较广泛. Java中byte用二进制表示占用8位,而我们知道16进制的每个字符需要用4位二进制位来表示,所以我们就可以把每个byte转换成两个相应的16进制字符,即把byte的高4位和低4位分别转换成相应的16进制字符H和L,并组合起来得到byte 转换到16进制字符串的结果new String(H) + new String(L).即byte用十六进制表示只占2位. 从上面可以看出