这是我的战争1.4.3破解:关于C语言几个简单算法

来源:百度文库 编辑:高考问答 时间:2024/04/19 22:56:16
执行表达式“x=(y=4,z=16,k=32)”后,x的值是?

设x和y匀为int型变量,则表达式“x+=y,y=x-y,x-=y”的功能是?

设有如下定义:
int a=1,b=2,c=3,d=4,m=1,n=1;
则执行表达式“(m=a>b)&&(n=c>d)”后n的值是多少??

简单说明一下 谢谢~~~~~~~~~

逗号法则 x=32 “x=(y=4,z=16,k=32)” 括号中的值为表达式k=32

一步一步向右看,你会发现功能是,x,y值互换!这是一个非常经典的算法,交换值而不引入新变量

n的值不变,因为&&左边的值为0情况下,右边无论为0或1,整个表达式都为0,规定这种情况下右边不参与运算;同理可以推广到||左边为1的情况!!

还有什么不懂的欢迎来问问我哈!!
你一定是刚学c不久吧,不过你问的问题都是很容易出错的地方!!
加油哦!!好好学!!