C++ %是怎么计算的

已知double x=2.5,y=4.7;int a=7;则表达式x+a%3*(int)(x

=y)%2/4;的值是2.5 这道题%号是说明什么
这道题怎么算出2.5的

%是取余数。
假定 k=n1%n2 ; 事实上就表示为: n1 = n2*已知整数m+k ; 由于%运算符只关心k,所以已知整数m就给忽略了。

现在分析 x + a%3*(int)(x=y)%2/4 是如何求出2.5的。

x + a%3*(int)(x=y)%2/4 由 x 和 a%3*(int)(x=y)%2/4 组成
由于运算符运算级别的关系,先算 a%3*(int)(x=y)%2/4, 对于这个表达式,
由于()的级别最高,下面我按级别分解求值

(x=y) --> x=4.7
(int)(x=y)-->4

a%3*(int)(x=y)%2/4 --> a%3*4%2/4 -->7%3*4%2/4

对于运算符号 * / % ,其运算顺序是 left to right

7%3*4%2/4 --> 1*4%2/4 --> 4%2/4 --> 0/4 --> 0

故 x + a%3*(int)(x=y)%2/4 --> x + 0 --> x --> 2.5

不知以上解释是否清楚,请参考。

哈哈,我上课也没讲这么详细。
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-07-17
% 【求余运算符】 两边的参数必须是整数 求余返回值的符号与第一个参数相同 0求余任何数都返回0
使用方法 num1%num2 比如7%3 余1 就返回1
-7%3 返回-1

C++ %是怎么计算的
是取余数。假定 k=n1%n2 ; 事实上就表示为: n1 = n2*已知整数m+k ; 由于%运算符只关心k,所以已知整数m就给忽略了。现在分析 x + a%3*(int)(x=y)%2\/4 是如何求出2.5的。x + a%3*(int)(x=y)%2\/4 由 x 和 a%3*(int)(x=y)%2\/4 组成 由于运算符运算级别的关系,先...

C\/C++中取余数运算%是如何实现的?
求模运算和求余运算在第一步不同: 取余运算在取c的值时,向0 方向舍入;而取模运算在计算c的值时,向负无穷方向舍入。所谓向0方向舍入,就是以小数点为界限,直接将小数部分去掉。如(Int)-1.324=-1(亦叫截断法);而向负无穷方向舍入,就是最终结果比真实值更小。如(Int)-1.324=-2...

C++中 % 是怎么运算的
如果是双目运算符,则是求余运算符。具体如下:5%2,是求5除以2的余数,当然就是1了。这个符号还有一个用法,用在printf中表示格式化输出,具体如下:%a 浮点数、十六进制数字和p-记数法(C99)A浮点数、十六进制数字和p-记法(C99)c一个字符 d有符号十进制整数 e浮点数、e-记数法 E浮...

c++中%号是什么意思?
3、*(星号) 乘法运算 (3*3)4、\/(正斜线) 除法运算 (3\/3)5、%(百分号) 求余运算10%3=1 (10\/3=3···1)6、^(乘方) 乘幂运算 (3^2)7、! (阶乘) 连续乘法 (3!=3*2*1=6)8、|X| x为任何数 (绝对值) 求正 (|1|)...

\/在C++里代表什么运算
\/代表是整除,比如说n=123,那么n\/100=1, %是表示求余数,n%100=23.但是如果\/的两边的操作数有一个是浮点数的话,那么就是除法了,就和我们平时计算的除法一样,比如 6.2\/2=3.10000.

C++中%的意思是什么
c++中%有两种含义,一是运算符取余运算,而是输入输出格式前导符

C++中 % 是怎么运算的
C++中 % 是怎么运算的 是取余符号 A%B表示求A除以B的余数 6%4=2

C++中的%怎么用?
取模,就是取余数的意思,例如:5%3=2;//5除以3余2 13%4=1;//13除以4余1 %只可以作用于整数,不可以用来计算浮点数。

C++中整除符号是什么?
C语言中整除是 \/ 符号,%符号是取余运算符。整除运算符( \/ )需要注意的就是运算结果会自动转换为与被除数一致的数据类型。举例说明如下:int a=5, b=2;float c;c = a\/b;\/\/ 运算结果为2.0,而不是2.5,因为a是int型的,所以计算结果会转换为int型,\/\/ 而c又是float型的,所以最后将...

C语言求余问题:当 被除数 小于 除数 时,比如2%5,怎么计算啊,谢谢啦!
首先明确:求余(%)运算又叫模(mod)运算,C\/C++当中求余(%)运算的操作数只能是整型(int)当被除数小于除数时,求余结果就等于被除数。例如:2%5=2,3%10=3.理解的话有两个角度:1.从数学角度来理解很简单,就按照数学上求余数的方法来求余:例如:2÷5=0……2(商0余2)2.从编程...

相似回答