vlambda博客
学习文章列表

C语言的运算符、优先级别、结合性

运算符

注意:关系运算中,除法/,和取余 %与现实中略有区别。

除法 /的运算结果,是和运算对象的数据类型有关。

如果两个数都是int整型数据,则商就是int数据,若商有小数,则截取小数部分;

‚被除数和除数中只要有一个或两个都是浮点型数据,则商也是浮点型,不截取小数部分。

例如:16 / 5== 3 。    3 / 5 ==0 。   

      5 / 3 ==1  。

如果把除数变成小数,16/ 5.0 == 3.20000

最典型的例题就是:

  求S = 1 + 1 / 2 + 1 / 3 + 1 / 4 + 1 / 5 …

        + 1 / 100 的值。

取余 % 的运算对象,必须是整数,结果是整除后的余数。

       其余数的符号与被除数相同。(即被除数是正数,则余数是正数。被除数是负数,则余数是负数。)

例如:13 % 3== 1 。   13 % -3 ==1 。   

     -13 % 3 == -1

      -13% -23 == -13 。   3 %5 == 3 。

 

以下在程序中,输出6个整数,分别是13%-3, 13%3,13%-3, -13%23, 3%5 的值。

C语言的运算符、优先级别、结合性

其结果为

C语言的运算符、优先级别、结合性



逻辑运算符(非),&&(并且), ||(或)。的真假判断。

C语言的运算符、优先级别、结合性

C语言对真假的处理:非零是真,用1表示。   零是假,用0表示。

 

程序中,不含有;分号的是表达式,含有分号的是语句。

所以,表达式为真,则程序执行语句,表达式为假,则不执行语句。

若整个表达式为假,则语句为假,用0表示。

C语言的运算符、优先级别、结合性

重点:&&(并且) 左边的表达式为假,右边的表达式肯定不执行。

      ||(或) 左边的表达式为真,右边的表达式肯定不执行。


最后

附:  运算符的优先级和结合性