她与晚风 发表于 2022-2-18 17:29:56

a[i] = m%10; m = m/10; i++;什么意思

#include<stdio.h>
#include<math.h>

void main()
{
        int a , m , i=0 , sum=0 , j;
        printf("请输入一个二进制数字m : \n");
loop:scanf("%d" ,&m);
        while(m)
        {
                a = m%10;
                m = m/10;
                i++;
        }
        for(j=0;j<i;j++)
        {
                if(a ==0 || a == 1)
                {
               
                }
                else
                {
                        printf("error!请重新输入:\n");
                        i=0;
                        goto loop;
                }
        }

        for(j=0;j<i;j++)
        {
                sum=sum+a*pow(2,j);
        }
        printf("转化为十进制数后为 %d \n" ,sum);
}

傻眼貓咪 发表于 2022-2-18 18:27:54

m%10 取模(余数)
m/10 取商

比如:
7%3 = 1 (1 是余数)
7/3 = 2 (2 是商)

wslmyb 发表于 2022-2-18 20:34:13

a = m%10; m = m/10; i++
你这个是把一个二进制数转化为十进制时
10
1010
页: [1]
查看完整版本: a[i] = m%10; m = m/10; i++;什么意思