解题步骤:
1、(int)(2.5+4.7)=(int)(7.2)=7,式子变 x + a%3 *7 %2/4;
2、a%3=1,式子变 x + 1 *7 %2/4;
3、1*7=7,式子变 x + 7 %2/4;
4、7 %2=1,式子变 x+1/4;
5、1/4 整数除整数的除法先做,商得 0,式子变 x + 0;
6、x+0=2.5 + 0=2.5,答案2.5。
字符解释:
(int)(x+y) -- 括号里的先做
2/4 -- 整数2除以整数4,得整数0,但这里前面还有运算符%,所以你不能先做2除以4的整数除法。
% 是整数与整数的除法求余数运算,得余数,(略去商)。
2.0/4.0 -- 浮点数除以浮点数,得浮点数的商 0.5。
C语言算术编程示例:
#include <stdio.h>
int main()
{
int a = 21;
int b = 10;
int c ;
c = a + b;
printf("Line 1 - c 的值是 %d\n", c );
c = a - b;
printf("Line 2 - c 的值是 %d\n", c );
c = a * b;
printf("Line 3 - c 的值是 %d\n", c );
c = a / b;
printf("Line 4 - c 的值是 %d\n", c );
c = a % b; printf("Line 5 - c 的值是 %d\n", c );
c = a++; // 赋值后再加 1 ,c 为 21,a 为 22
printf("Line 6 - c 的值是 %d\n", c );
c = a--; // 赋值后再减 1 ,c 为 22 ,a 为 21
printf("Line 7 - c 的值是 %d\n", c );
}