谁能帮我逐句解释一下这个C语言程序,谢谢!!

来源:百度知道 编辑:UC知道 时间:2024/06/21 18:37:18
#include <iostream.h>
int len;
void intout(long N,int B)
{//将N转换成B进制
int t,m;
t=N/B;
m=N%B;
if (t<B)
{
cout<<t;
cout<<m;
return;
}
intout(t,B);
cout<<m;
}
void decimal(float f,int B)
{
if(len>6)
return;
float t;
t=f*B;
if(t>1)
cout<<(int)t;
else
cout<<"0";
len++;
decimal(t-(int)t,B);

}
void changeBase(float f,int B)
{
intout((int)f,B);
cout<<".";
decimal(f-(int)f,B);
}
void main()
{
float a;
int b;
cout<<"Input the number:";
cin>>a;
cout<<"Input the basic B(<=10):"<<endl;
cin>>b;
len=0;
changeBase(a,b);
cout<<endl;
}

如果要逐句解释,估计解释了也看不懂

如果你需要逐句解释,干脆不要看它吧。

#include <stdio.h>
#include <stdlib.h>

void trans(int n,int m)
{
if(n)
{
trans(n/m,m);
if(n%m<10)
printf("%c",n%m+'0');
else
printf("%c",n%m-10+'A');
}
}

void main()
{
int n,m;

printf("输入十进制数N和转化的进制数M:");
scanf("%d%d",&n,&m);

printf("十进制数%d转化成%d进制后的结果为:",n,m);
trans(n,m);
printf("\n");
}