c语言 a=a⼀i和a*=1⼀i区别

2024-12-17 02:29:35
推荐回答(5个)
回答1:

  1. 如果i是浮点型(a可以是浮点或是整型),a=a/i和a*=1/i ;这两个算式没有区别!

  2. 如果a是浮点型,i是整型,则当i等于1时,两式相同,否则,a=a/i结果为一个小数,而a*=1/i结果为0。因为,1/i是两个整数相除,结果还是整数,当i的绝对值大于1时,1/i结果为0。

  3. 如果a,i都是整型,则两式只有特殊情况下相同:

    • i=1时,两式相同,结果为a

    • i等于1时,

      • |a|<|i|,两式相同,结果为0

      • 否则,a=a/i  结果非0,   a*=1/i结果为0(原因同2)

回答2:

这要看变量的数据类型是浮点还是整形了。
对于整形数之间相除,结果是取其去余数的商。如1/3=0, 7/2=3等
结论:(1)两个数都为整形时,结果不一样。如int i=3,那么1/i=0. 若a=10,那么a=a/i的结果是a为3,
而a*=1/i的结果是a为0.
(2)i为浮点时,两个表达式结果一样。如float i=3,那么1/i=0.33333.

回答3:

这要看a的数据类型了,a是整形就没区别。不然1/i有可能整除啊。

回答4:

两个结果结果不同:比如
a=3,i=2;
a=a/i的结果是:1
而a*=1/i的结果是0吧

回答5:

假设a为6,i为3;a/i=2、而a*(1/i)等于多少就看四舍五入了