C語言將一位十進位制數轉化成2-16進位制的任意數
阿新 • • 發佈:2019-01-09
思路:很簡單,就是將要轉換的那個不斷對轉化的進位制數不斷取餘,然後倒敘輸出即可
程式碼:
#include<cmath> #include<cstdio> #include<cstring> #include<cstdlib> #define ll long long char shuzi[] ="0123456789ABCDEF"; int main() { int n,m,i,j,k=0; char s[100]; scanf("%d",&n); memset(s,0,sizeof(s)); for(i = 2; i <= 16; i++) { printf("%d轉換成%d進位制的結果為:",n,i); m=n; while(m!=0) { s[k++]=shuzi[m%i]; m/=i; } for(j=k; j>=0; j--) printf("%c",s[j]); printf("\n"); memset(s,0,sizeof(s)); k=0; } return 0; }