C语言中的这一句 if(a>b&&!a%b||a==b) return a; 是什么意思?

能解释一下吗,我饶了半天都不知道什么意思??

第1个回答  2014-09-17
改成这样就好看多了吧
 if( (a>b) && (!a)%b || a==b )//满足(a>b 并且(!a)%b不为0) 或者 a等于b的时候 执行下一句
 return a;//如果以上条件成立 则返回a 否则不执行任何操作
 
 求采纳

追问

请问为什么是(!a)%b || a==b )而不是![(a%b)||(a==b)]啊( ⊙ o ⊙ )??

追答

因为优先级的原因 &&的优先级高于||

求采纳

本回答被提问者采纳
第2个回答  2014-09-17
满足a > b,且a能被b整除,或满足 a == b,就返回a。
第3个回答  2014-09-17
a>b为真且a除b余0 或者a恒等于b 意思就是a能被b整除的情况下 返回a追问

那个感叹号不是“非”的意思吗?这句的顺序不应该是:![(a%b)||(a==b)]这样的吗。。。?

C语言高手来 C语言中,比较ab大小的 If(a!=b) If(a>b) printf(“A>B\\n...
a后面那个感叹号是什么意思-> not的意思 后面有个 =号 就是不等于

C语言中c=a>b?a∶b; 是什么意思?
这是典型的三目运算!它的含义就是多个if语句的运用!首先如果a>b那么c=a;反之如果a<b;那么c=b;希望能帮助你!

c语言if(a<b)a=b是什么意思?
如果b大于a,则把b的值赋值给a

C语言语句
补充: C语言的判断语句是if(a==b)呀!!! 不能是if(a=b)if(a=b)为先令a=b, 再if(a)选B 要知道if(0)为假. if(其他整数)为真 A if(a) -> if(0) -> if(假) 不会执行 B if(a=b)-> if(a=5) -> if(5) -> if(真) 执行 C if(a>=b) -> 0>=5 假 不执行 ...

C语言 if(!a || !b) return a + b
int gcd(int a, int b){ if (!a || !b) return a + b; \/\/如果!a或!b不为0,即a或b为0,返回数值a+b if (a > b) return gcd(b, a % b); \/\/如果a、b均不为0(不满足上一个if语句才能进行这个语句)且a>b,返回gcd(b, a % b) (a % b表示a除以b的余)retu...

C语言if语句的问题
第一个if if(a>b) a=b;c=a;因为此时a=3,b=5,所以if条件不成立,不运行a=b,而是运行c=a这句,即c的值发生变化 此时,c=3,b=5,a=3,继续运行第二个if f(c!=a) c=b;因为此时c=3,b=5,a=3,,所以if条件不成立,c=b不运行,所以 啊=3,b=5,c=3,输出结果是3,5,3 if...

C语言中if(a>b>c)是什么意思???
C语言中if(a>b>c)表示if((a>b)>c) 先求出a>b的结果,然后这个结果再和c比较,由于a>b的结果不是0就是1,最终就是0或者1与c比较。C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要...

C语言程序: if(a> b) printf("");
1、本程序输出结果是:over!。2、第一个if的理解 题目中有两个if语句,构成了双重嵌套判断条件。本题目中的第一个if为第一层判断条件。如果a>b,那么程序进入第二层判断条件,当a>c时,将执行语句printf("%d\\n",a),即输出a的值;当a<c时,将执行else后的语句printf("%d\\n",b),即输出b...

C语言(a>b)?a:b是什么意思?
C语言(a>b)?a:b的意思是如果a>b的结果为真,那么表达式的结果会是a,表达式的结果为0,那么表达式的结果就会是b。这是C语言中唯一一个三目运算符,它可以简化很多表达式。有利于代码的书写。求值规则为:如果表达式1的值为真,则以表达式2的值作为条件表达式的值,否则以表达式3的值作为整个条件...

(a>b)?a:b什么意思?怎么解释?在c语言中
答案: 这是条件运算符在C语言中的用法。表达式 ` ? a : b` 的含义是:如果 `a` 大于 `b`,则整个表达式的值为 `a`,否则为 `b`。解释:1. 条件运算符简介:条件运算符 `? :` 是C语言中唯一一个三目运算符。它用于进行简单的条件判断,并返回两个值中的一个,取决于条件的真假。2....

相似回答