复制代码 代码如下:
#include<stdio.h>
#include<math.h>
int change(int n,int *sum,int *m)//n为第n位,m总位数
{
char c;
if(c!='#')
{
*m=*m+1;
change(n+1,sum,m);
}
if(c=='#')
{
return *sum=int(*sum+pow(2,*m-n));
}
}
void main()
{
char c;
int n=0,*sum=0,*m=0;
printf("请输入二进制数(‘#'开始与结束):");
scanf("%c",c);
int t=change(n,*sum,*m);
printf("转化成十进制的数字为:%d",t);
}</math.h></stdio.h>
时间: 2024-11-03 17:25:13