帮助理解逻辑

时间:2011-09-16 18:57:35

标签: c++

我如何从逻辑上理解这一点:

int low_digit = value % 10;
value /= 10;

我丢失的地方是mod分割并打印剩余部分。什么除以?

value /= 10;是什么意思?

8 个答案:

答案 0 :(得分:5)

/=是C ++的说法:

value = value / 10;

此处value % 10会向您提示将其除以10.想象value为19,这将为您提供9,最后一位数(提醒将其除以10)。最后一个语句将该值除以10(整数除法),并给出1(十位数)。

答案 1 :(得分:2)

这是一种分配速记和更有效的说法:

value = value / 10;

就像:

i++;

是:

i = i + 1; 

或:

i +=1;

你也可以这样做:

value %= 10; // same as value = value % 10;

答案 2 :(得分:2)

/*int low_digit =*/ value % 10;
/*value /= 10; */

首先,计算value modulo 10。这会将value除以10,结果就是除法的其余部分。

int low_digit = value % 10;
/*value /= 10; */

然后创建一个名为int的{​​{1}},并从模运算中分配值。

low_digit

最后,/*int low_digit = value % 10;*/ value /= 10; 除以value,并分配给结果。这与10相同 整个序列的结果是从value = value / 10;中删除最低有效位,并将其放入value

答案 3 :(得分:1)

它是所有算术运算的简写并适用:

value = value / 10:

答案 4 :(得分:1)

value % 10提醒分组。例如,345 % 10等于5

value /= 10;value = value / 10;

的含义相同

答案 5 :(得分:1)

value /= 10表示您将value除以10,然后将结果分配回变量value

答案 6 :(得分:0)

/=是一个除法赋值运算符。

来源:Wikipedia

答案 7 :(得分:0)

当你除以模数时,你将得到余数。例如:10%3 = 1。

当您使用int(非双数据类型)除以常规除法符号时,您将收到“数字进入另一个数字的次数”。例如:10/3 = 3,因此3次进入10次,3次(想想在学校长期分裂)。

在您的特定示例中,您几乎输入一个数字,将最低有效数字存储在变量中,然后返回没有最低有效数字的数字。示例:

如果value = 12,则low_digit = 2(12%10 = 2),并且值更新为1(12/10 = 1)。

相关问题