错题本2020.5.2

1.用do-while语句构成的循环,只有在while后的表达式为零时结束循环。

以下叙述正确的是( )d
A、 do-while语句构成的循环不能用其它语句构成的循环代替。
B、 do-while语句构成的循环只能用break语句退出。
C、 用do-while语句构成的循环,只有在while后的表达式为非零时结束循环。
D、 用do-while语句构成的循环,只有在while后的表达式为零时结束循环。

选D。
A 可以用for循环代替。
B 不满足条件时即条件的逻辑值为假(0)时推出,break也可以。
C while(条件),条件为真时进行循环,为假(0)时退出。
D while(条件),条件为真时进行循环,为假(0)时退出, 用do-while语句构成的循环,只有在while后的表达式为零时结束循环,break 是可以退出循环,但不是唯一的。

用do-while语句构成的循环,只有在while后的表达式为零时结束循环 D是正确的;do-while是先做一次do,完事后再while,若非零继续do,若零结束整个循环break在do中只能结束本次的do内容,不能像单个while循环时候结束整个大循环 不懂的不要乱说,误导人 请采纳

2. do { } while(!x) 中的!x

.do {
} while(!x) ;相当于
do {
} while( x==0 ) ;
该循环的格式为:
do {
} while( e ) ; 当e为真时,循环。 !x 为真,只有x为0时才可以!
!是 "非"运算,非0即1,非“非0”为假。

!x是逻辑非操作,当x为0时,值为真,否则值为假。 在这里等效于x==0。
在while(!x)后面有一个分号,表示该循环的循环体为空,即只做判断和循环,并不执行操作。
于是这句的意思就是,如果x为0,则一直循环下去,不做操作,否则继续执行。
如果没有其它线程来改变x的值,那么这里就是一个死循环了。

3.a>=10或a<=0"的C语言表达式是?具体分析:

a>=10||a<=0
具体分析:
100 <=n<=999
先计算 100<=n 的结果:要么是 1 ,要么是 0

然后才用 1 或 0 去和 999 比较关系,所以

100 <=n<=999 始终都为 1,即 if(100 <=n<=999) 始终成立(条件始终为“真”)

4.if(条件){ }是条件判断语句,条件为零,不执行if内的语句,条件不为零就执行if内的语句。

i%2是求i除以2的余数。
if(i%2)就是判断i除以2的余数是否为零,不为零就执行if内的语句,如果余数为零,就不执行if内的语句。

5.不要把赋值,包括复合赋值组合进行表达式!

6.逗号运算符是二元运算符:

逗号运算符确保操作数被顺序地处理:先计算左边的操作数,再计算右边的操作数。右操作数的类型和值作为整个表达式的结果。左操作数只是为了副作用需要而被计算,它其值会被丢弃。
逗号运算符的优先级是所有运算符中最低的。

7.关于C语言中运算符优先级说明

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值