谁可以帮我分析一下此段程序啊
											void two_ten(){
char *p,s[20];
long n;
p=s;
printf("请输入一个二进制数:");
scanf("%s",p);n=0;
while(*(p)!='\0')
{
n=n*2+*p-'0';
p++;
}
printf("2进制转化为10进制:%d\n",n);
}
 2012-06-17 14:46
	    2012-06-17 14:46
   2012-06-17 15:45
	    2012-06-17 15:45
   2012-06-17 16:04
	    2012-06-17 16:04
   2012-06-17 16:15
	    2012-06-17 16:15
   
										
					
	 2012-06-17 20:42
	    2012-06-17 20:42
   2012-06-17 20:52
	    2012-06-17 20:52
   2012-06-17 20:55
	    2012-06-17 20:55
   程序代码:
程序代码: while(*(p)!='\0')
    {
        n=n*2+*p-'0';//////(我想你是这里看不懂是吧 这里的意思就是把二进制的数一个一个的转化成十进制的 由于二进制的数是按照字符的形式存储到数组中 所以减去字符0就得倒数字0或者数字1 )
        p++;
    }										
					
	
 2012-06-17 22:07
	    2012-06-17 22:07
   2012-06-17 23:09
	    2012-06-17 23:09