c语言三大控制结构常用句型,C Primer Plus 第7章 C控制语句:分支和跳转 7.3获得逻辑性...

假设需要编写一个程序,用来计算在一个输入的句子中,除单引号和双引号以外的字符出现了多少次。可以用逻辑运算符来实现该目的,可以用英文的句号来标识一个句子的结束。

程序清单  7.6 chcount.c

#include

#define PERIOD '.'

int main (void)

{

int ch;

int charcount=0;

while((ch=getchar())!=PERIOD)

{

if(ch!='"' && ch!='\'') //如果字符不是双引号并且它不是单引号

charcount++;

}

printf("There are %d non-quote characters.\n",charcount);

return 0;

}

逻辑运算符的优先级低于关系运算符,所以不必使用圆括号组合表达式。

C的逻辑运算符

运算符

含义

&&

||

!

假设A和B是两个简单的关系表达式,那么可以声明如下:

*仅当A和B都为真时,A&&B才为真。

*如果A为真或B为真或二者都为真,A||B为真。

*如果A为真,!A为假;如果A为假,!A为真。

7.3.1 改变拼写法:iso646.h

C99标准为逻辑运算符增加了可供选择的拼写法。它们在iso646.h头文件中定义。

表7.4 逻辑运算符的可选表示法

传统的

iso646.h

&&

and

||

or

not

7.3.2  优先级

!运算符拥有最高的优先级,它高于乘法运算,和增量运算符的优先级相同,仅次于圆括号。&&运算符的优先级高于||,这二者的优先级都低于关系运算符而高于赋值运算符。

7.3.3  求值的顺序

C保证逻辑运算符是从左到右求值的。&&和||运算符是序列的分界点,因此在程序从一个操作数前进到下一个操作数之前,所有的副作用都会生效。而且,C保证一旦发现某个元素使表达式总体无效,求值将立刻停止。

7.3.4  范围

可以把&&运算符用于测试范围。例如:range>=90 && range<=100,千万不要像数学上这样写90<=range<=100。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值