/* -- 进制转换 -- */ #include<bits/stdc++.h> using namespace std; int wei[100005]; // 用于储存转化后的每一位 int ten_to_n(int x,int n); // 把十进制的下x转化为n进制下的数 int n_to_ten(int x,int n); // 把n进制下的x转化为十进制下的数 int cnt; //计数器 int main(void) { int x,n; cin>>x>>n; cout<<ten_to_n(x,n)<<endl; cnt=0; //把cnt清零,否则影响下一个函数 memset(wei,0,sizeof(wei)); //把wei数组清零,否则影响下一个函数 cout<<n_to_ten(x,n); return 0; } int ten_to_n(int x,int n) { int ans=0; while(x!=0) { wei[++cnt]=x%n;//进制转换的法则 x=x/n; } for(int i=cnt;i>=1;i--) { ans+=wei[i]*pow(10,i-1); } return ans; }//该函数精度较低,如果需要高精度则诸位输出即可,不需要进行求和的复杂操作 int n_to_ten(int x,int n) { int ans=0; while(x!=0) { wei[++cnt]=x%10; x=x/10; } for(int i=cnt;i>=1;i--) { ans+=wei[i]*pow(n,i-1); } return ans; }
标签:进制,ten,int,wei,转化,--,ans,函数 From: https://www.cnblogs.com/KeviNieZenith/p/16883609.html