1.10 数值转化

发布时间 2023-04-26 23:16:04作者: 自律小子丶

第一部曲:

 

第二部曲:

第三部曲:

第四部曲:

#include<iostream>
#include<cmath>
using namespace std;
const int N=101;
int char_to_num(char ch)
{
if(ch>='0'&&ch<='9') return ch-'0';
else return ch-'A'+10;
}
char num_to_char(int n)
{
if(n>=0&&n<=9) return char('0'+n);
else return char('A'+n-10);
}
int shijinzhi(char a[],int x)
{
int i=0,length=0,sum=0;
for(i=0;a[i]!='\0';i++)
{
length=i;
}
for(i=0;i<length;i++)
{
sum+=char_to_num(a[i])*pow(x,i);
}
return sum;
}
int main()
{
char a[N];
int x,y;
int flag=1;
printf("转化前的数是:\n");
scanf("%s",a);
printf("转化前的数制是:\n");
cin>>x;
int sum=shijinzhi(a,x);
cout<<sum;
// printf("转化后的数制是:\n");
// cin>>y;
// printf("转化后的数是:\n");


return 0;
}