CODE[VS] 1474 十进制转m进制

题目描述 Description

将十进制数n转换成m进制数 m<=16

n<=100

 

输入描述 Input Description

共一行

n和m

输出描述 Output Description

共一个数

表示n的m进制

 

样例输入 Sample Input

样例1:10 2

样例2:  100 15

样例输出 Sample Output

样例1:1010

样例2:   6A

 

数据范围及提示 Data Size & Hint

用反向取余法

 

进制转换的板子吧,要通过字符来实现,

有人会不明白为什么会出来字母,

那可以用计算器自己试一下。

 

板子吧,记住吧。

 

ac代码,

 

 

 1 #include<iostream>
 2 #include<cstdio>
 3 #include<algorithm>
 4 #include<cstring>
 5 using namespace std;
 6 
 7 int n,m,l;
 8 char c[10];
 9 
10 int main()
11 {
12     scanf("%d%d",&n,&m);
13     while(n>0)
14     {
15         if(m>10&&n%m>=10)
16             c[l++]=n%m+'A'-10;
17         else 
18             c[l++]=n%m+'0';
19         n/=m;        
20     }
21     for(int i=l-1;i>=0;--i)
22         printf("%c",c[i]);
23     return 0;
24 }

 

 

 

 

posted @ 2018-06-06 10:16  孟东行#  阅读(202)  评论(0编辑  收藏  举报