选择结构程序设计练习题借鉴.pdf
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
选择结构程序设计是编程语言中的基础概念,它主要涉及条件判断和逻辑运算,用于决定程序执行的路径。以下是对题目中涉及的知识点的详细解释: 1. **逻辑运算符**:逻辑运算符包括`&&`(与)、`||`(或)和`!`(非)。它们用于组合布尔表达式。例如,`A && B`表示A和B都必须为真,整体结果才为真;`A || B`表示A或B只要有一个为真,整体结果就为真;`!A`表示A的否定。 2. **运算符优先级**:运算符的优先级决定了表达式的计算顺序。通常,`!`的优先级最高,接着是`*`、`/`、`%`,然后是`+`和`-`,再是`<`、`>`、`<=`、`>=`和`==`、`!=`,最后是`&&`和`||`。`? :`三元运算符的优先级介于`&&`和`||`之间。 3. **逻辑表达式**:在题目中,正确表示“当x的取值在[1,10]和[200,210]范围内为真,否则为假”的表达式是`(x>=1)&&(x<=10)||(x>=200)&&(x<=210)`,这使用了逻辑或`||`和逻辑与`&&`。 4. **表达式求值**:在判断坐标轴上阴影部分的表达式中,正确表达式是`(x<=a)&&(b<=x<=c)`,它利用了连续比较的特性。 5. **字符型数据和条件判断**:判断`char`型变量是否为大写字母,正确表达式是`(ch>=,A?)&&(ch<=,Z?)`,这里使用了字符常量的比较。 6. **逻辑运算符的短路特性**:在表达式`x||y+z&&!y`中,`||`运算符具有短路特性,如果`x`为真,则不会评估右边的表达式,因此`y+z&&!y`不会被执行,表达式的值取决于`x`。 7. **表达式求值**:对于表达式`(x>=y&&ch< 'B'&&!y)`,由于`x=43`,`ch='A'`,`y=0`,所以`x>=y`为真,`ch< 'B'`也为真,`!y`为真,整个表达式的结果是真,即1。 8. **奇偶性判断**:`A%2`可以用来判断A是否为奇数,因为偶数除以2的余数为0,奇数则不是。`A%2==1`和`!(A%2)`都能正确表示A为奇数时为真,但`A%2`本身不是一个布尔表达式,不能直接用作条件。 9. **短路逻辑运算符**:`&&(n=c>d)`是短路逻辑与,只有当左侧表达式为真时才会计算右侧。因为`a=1`,`b=2`,所以`m=a>b`为假,整个表达式不进行右侧计算,结果为假,即0。 10. **运算符优先级**:`?`的优先级最低,`!`的优先级最高。 11. **逻辑运算与赋值运算**:在C语言中,`(-1)&&(-1)`为真,`a=d/100%9`计算后`a`为2,所以输出结果是`2,1`。 12. **逻辑运算符的结合性**:`++a||++b&&++c`中,`||`具有短路特性,`++a`后`a`为2,表达式已经为真,后面的`++b&&++c`不会被执行,`a`的值为2。 13. **逻辑与运算符**:`(a=w>x)&&(b=y>z)`,由于`w=1`, `x=2`, `y=3`, `z=4`,`w>x`和`y>z`都为假,整个表达式结果为假,`b`的值保持不变,为1。 14. **if语句的形式**:选项B的if语句中,`if(x==y)x+=y;`是不正确的,因为没有分号结束语句。 15. **条件语句的副作用**:if语句`if(x>y) z=x;x=y;y=z;`相当于将`x`的值赋给`z`,然后将`y`的值赋给`x`,最后将`z`的值赋给`y`,结果是`x=20`, `y=20`, `z=20`。 16. **if语句的格式**:选项B是正确的,因为它包含一个完整的if-else结构,并在每个分支中都有一个完整的语句。 17. **条件判断的真值**:在C语言中,任何非零值都被视为真。因此,`if(a+b+c)`在`a=5`, `b=0`, `c=0`的情况下,虽然计算结果为5,但被视为真,输出`***`。 18. **自增运算符**:`m++`是后缀自增运算符,先使用`m`的当前值,然后增加`m`。因此,`if(m++>5)`中,`m`的初始值为5,比较后增加到6,因此输出`6`。 这些练习题涵盖了选择结构的基本概念,如逻辑运算符、条件判断、优先级、短路特性、自增运算符等,这些都是编写程序时不可或缺的基础知识。通过这样的练习,可以帮助程序员加深对这些概念的理解,提高编程能力。
剩余42页未读,继续阅读
- 粉丝: 0
- 资源: 8万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助