学习计算机就不得不谈及简单的进制转换,毕竟都逃不过的哈哈哈
闲话不多说,先上代码
#include<cstdio>
int main(){
int y= 0,product = 1;
int x,x1;
int p;
printf("请输入需要被转化的进制数(as 2、8、10...):");
scanf("%d",&p);
printf("\n");
printf("请输入一个%d进制数:",p);
scanf("%d",&x);
x1=x;
while(x!=0){
y = y+(x%10)*product; //x%10是为了每次获取x的个位数
x = x/10; //去掉x的各位
product = product*p; //produce在循环中不断乘p,得到1,p,p^2,p^3...
}
printf("\n");
printf("中间转化为十进制数值为:%d\n",y);
int z[40]; //数组z中存放pp进制中的每一位
int num = 0;
int count=0;
int pp;
printf("\n");
printf("请输入需要转化成的进制数(as 2、8、10...):");
scanf("%d",&pp);
do{
z[num] = y%pp; //除基取余
// printf("%d\n",z[num]);
// printf("%d\n",num);
num++;
y = y/pp;
count++;
// printf("%d\n",count