数制转换c语言函数 数制的转换c语言代码( 二 )


}
}
void
main()
{
int
m,n,x;
char
ch;
printf("给定进制数M:");
scanf("%d",m);
loop:
printf("给定一个%d进制的数X:",m);
fflush(stdin);
//一个M进制的数X转10进制
for(x=0;;)
{
ch=getchar();
if(ch='0'
ch='9')
{
n=ch-'0';
}
else
if(ch='a'
ch='z')
{
n=ch-'a'+10;
}
else
if(ch='A'
ch='Z')
{
n=ch-'A'+10;
}
else
{
break;
}
if(n=m)
{
goto
loop;
}
x=x*m+n;
}
printf("转化成十进制数为:%d\n",x);
printf("给定要转化进制数M:");
scanf("%d",m);
printf("转化成%d进制后的结果为:",m);
trans(x,m);
printf("\n");
}
其他的方法:
trans函数也可以这样写:
void
trans(int
n,int
m)
{
char
str[100];
int
i;
for(i=0;n0;i++)
{
if(n%m10)
{
str[i]=n%m+'0';
}
else
{
str[i]=n%m-10+'A';
}
n=n/m;
}
for(n=i;n0;n--)
{
printf("%c",str[n-1]);
}
}
c语言 数制转换(递归)#include "stdafx.h"
#include stdlib.h
#include stdio.h
#include string.h
int converN(int p,int m, int n);
int conver10(char *pold, int m);
int power(int m, int pow);
int main( )
{
int old,fresh,oldv=0;
char cold[100];
printf("输入的数制不能超过16,按q退出 , 按回车继续 。");
while(getchar() != 'q')
{
printf("请输入原数制:");
scanf("%d",old);
printf("请输入新数制:");
scanf("%d",fresh);
printf("请输入要转换数字:");
scanf("%s",cold);
printf("转换后数字为:");
converN(conver10(cold, old),old,fresh);
putchar('\n');
printf("输入的数制不能超过16 , 按q退出,按回车继续 。");
while(getchar() != '\n')
continue;
}
return 1;
}
int power(int m, int pow)
{
if(pow == 0)
return 1;
if(pow0)
return m*power(m,pow-1);
}
int conver10(char *pold, int m)
{
int len = strlen(pold);
int res=0;
for(int i=0; ilen; i++)
{
switch(tolower(pold[i]))
{
case 'a':
res += (pold[i]-'a'+10) * power(m,len-i-1);
break;
case 'b':
res += (pold[i]-'a'+10) * power(m,len-i-1);
break;
case 'c':
res += (pold[i]-'a'+10) * power(m,len-i-1);
break;
case 'd':
res += (pold[i]-'a'+10) * power(m,len-i-1);
break;
case 'e':
res += (pold[i]-'a'+10) * power(m,len-i-1);
break;
case 'f':
res += (pold[i]-'a'+10) * power(m,len-i-1);
break;
default:
res += (pold[i]-'0') * power(m,len-i-1);
}
}
return res;
}
int converN(int p,int m, int n)
{
int i=0;
if(p/n != 0)
converN(p/n,m,n);
if((i=p%n)10)
putchar('0' + i);
else
putchar('a' + i - 10);
return 1;
}
【数制转换c语言函数 数制的转换c语言代码】关于数制转换c语言函数和数制的转换c语言代码的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

推荐阅读