0
点赞
收藏
分享

微信扫一扫

C语言逻辑运算符介绍和示例


文章目录

  • ​​1、逻辑运算符介绍​​
  • ​​2、逻辑表达式的书写​​
  • ​​3、不得不说的逻辑非​​
  • ​​4、获取视频教程​​
  • ​​5、版权声明​​

1、逻辑运算符介绍

在日常生活中,要做出某个决定,需要判断的条件往往不止一个,需要判断多个条件,例如超女选秀,参与选秀的女孩子有以下基本数据:

年龄:取值16-50岁。

身高:取值150cm-190cm。

身材:1-火辣;2-普通;3-飞机场。

颜值:1-漂亮;2-一般;3-歪瓜裂枣。

女神标准是:1)年龄25-30岁;2)身高165cm-175cm;3)身材火辣;4)颜值漂亮或一般(可以整容)。

大脑中的逻辑是这样的:年龄25-30岁 并且 身高165cm-175cm 并且 身材火辣并且(颜值漂亮 或者 颜值一般)。

用C程序来表达大概如下:

if ( (年龄 >= 25) 并且 (年龄 <= 30) )
{
if ( (身高 >= 165) 并且 (身高 <= 175) )
{
if (身材 == 火辣)
{
if ( (颜值 == 漂亮) 或者 (颜值 == 一般) )
{
printf("超女选秀合格,送往后宫。\n");
}
}
}
}

示例(book25.c)

/*
* 程序名:book25.c,此程序演示在if中使用逻辑运算符。
* 作者:C语言技术网(www.freecplus.net) 日期:20190525
*/
#include <stdio.h>

int main()
{
int age=0; // 年龄
int height=0; // 身高,单位:厘米cm
int sc=0; // 身材,1-火辣;2-普通;3-飞机场。
int yz=0; // 颜值,1-漂亮;2-一般;3-歪瓜裂枣。

printf("请输入年龄、身高、身材(1-火辣;2-普通;3-飞机场):");
scanf("%d %d %d",&age,&height,&sc);
printf("请输入颜值(1-漂亮;2-一般;3-歪瓜裂枣):");
scanf("%d",&yz);

if ( (age >= 25) && (age <= 30) ) // 年龄在25-30之间
{
if ( (height >= 165) && (height <= 175) ) // 身高在165-175之间
{
if (sc == 1) // 身材,1-火辣
{
if ( (yz == 1) || (yz == 2) ) // 颜值,1-漂亮或者2-一般
{
printf("超女选秀合格,送往后宫。\n"); return 0;
}
}
}
}
printf("超女选秀不合格,发放五两银子后送回家。\n");
}

运行效果

C语言逻辑运算符介绍和示例_逻辑表达式

2、逻辑表达式的书写

在book25.c中,采用了if嵌套的方法,其实可以采用一个复杂的if逻辑表达式一次性完成全部的判断,采用括号、对齐、空格、换行有助于更清晰的表达复杂的逻辑表达式。

示例(book26.c)

/*
* 程序名:book26.c,此程序演示在if中使用逻辑运算符。
* 作者:C语言技术网(www.freecplus.net) 日期:20190525
*/
#include <stdio.h>

int main()
{
int age=0; // 年龄
int height=0; // 身高,单位:厘米cm
int sc=0; // 身材,1-火辣;2-普通;3-飞机场。
int yz=0; // 颜值,1-漂亮;2-一般;3-歪瓜裂枣。

printf("请输入年龄、身高、身材(1-火辣;2-普通;3-飞机场):");
scanf("%d %d %d",&age,&height,&sc);
printf("请输入颜值(1-漂亮;2-一般;3-歪瓜裂枣):");
scanf("%d",&yz);}

if ( ( (age >= 25) && (age <= 30) ) && // 年龄在25-30之间
( (height >= 165) && (height <= 175) ) && // 身高在165-175之间
( (sc == 1) ) && // 身材,1-火辣
( (yz == 1) || (yz == 2) ) ) // 颜值,1-漂亮或者2-一般
{
printf("超女选秀合格,送往后宫。\n");
}
else
{
printf("超女选秀不合格,发放五两银子后送回家。\n");
}
}

book26.c采用一个if表达式就实现了全部逻辑的判断功能,效果与book25.c相同,如果实在理解不了,就采用book25.c中的表达方式。

3、不得不说的逻辑非

逻辑运算符有三种,上文介绍了&&和||,还有一个!没介绍,在我看来,这个运算符就不应该存在,它很容易搞乱人的思维。

大家可以先看看它是怎么回事,也可以写代码测试一下它的用法,然后就忘了它。

!就是非,取相反的意思。

例如:

if (age==25) // 判断年龄是25岁

等同

if (!(age!=25)) // 判断年龄不是25岁再取反

这是吃饱了撑着。

举报

相关推荐

0 条评论