羊驼与野草的故事 原曲:这个C语言公式怎么计算呢?

来源:百度文库 编辑:高校问答 时间:2024/04/30 15:39:33
int j=5,m=2,k=7,n=4;[n+=m*=n=j%k].之后n和m的植分别为多少???
int a=1,b=3,c=5;表达式[a>=b>=c?a++:--b]的值是多少呢?
怎么计算,具体步骤是怎样的........?
如能帮助,非常感谢,祝福你一辈子!迫不及待!

从右往左赋值,j取余k等于5,赋给n,然后m乘以n等于10赋给m,此时m=10,n=5,最后将m加n等于15赋给n。所以m=10,n=15
条件表达式,先看问号前的逻辑表达式是1还是0。a>=b不成立,返回0,0>=c不成立,返回0,因此表达式以--b的值为准,为2。

第一个:
j%k=5;
n=j%k,所以n=5;
m*=n,m=2*5=10;
n+=m,n=5+10=15;
第二个:
a>=b,false,所以为0;
0>=c,即0>=5,false,所以为0;
所以选择--b;
a,c不变,b=2

首先都是从右向左

j%k 是 5
m=5*n=5
n=m +n=6

一般不同编译器计算的也不同,:
vc.net中m =10,n =15,j =5, k =7;
a =1,b =2,c=5;

第1题:
先做n=j%k,得n=5;再做m*=n,也就是m=m*n,得m=2*5=10;最后做n+=m,也就是n=n+m,得n=5+10=15.
答案:n=15,m=10
第2题:
先判断a>=b,结果为假,返回0值,再判断a>=b>=c,这时候就是判断0>=c,显然也为假,返回0.因此做--b(b先自减1,再赋给b),如果用
printf("%d",a>+b>=c:a++:--b);输出的话可以看到结果是2.
答案:2

先看第一句话,m=m*n(n=5%7=5)于是m=m*5=10 n=n+m=14
第2句话你是不是有循环控制条件没写啊 怎么感觉是死循环啊