C语言入门_Day 6布尔数与比较运算

目录

前言

1.布尔数

2.比较运算

3.易错点

4.思维导图


前言

除了算术计算以外,编程语言中还会大量使用比较运算,并会根据比较运算的结果是“真”还是“假”,来执行不同的代码。

 当你想买一杯奶茶,准备支付的时候,支付程序就会把你的账户余额和奶茶的价格进行一次比较:如果你账户余额大于或等于(>=)奶茶的价格,你才能够成功支付,并买走这杯奶茶;如果你账户余额小于(<)奶茶价格的时候,你就会支付失败。

 这里就会涉及到比较运算,比较运算得到的结果,要么为你的账户余额大于奶茶价格,),要么为你的账户余额小于奶茶价格)。

 这里的真(true)和假(false)也是一种数据类型,叫做布尔数或者布尔型

1.布尔数

布尔型或者布尔数只有两种值,一种是true,一种是false。分别用来表示状态为真,和状态为假,比如阿墨今年19岁,那么“阿墨成年了”这个表述就是true(真),“阿墨未成年”这个表述是false(假)。

1.1——下面是定义两个布尔变量并进行赋值的过程:

bool bo_1=true;
bool bo_2=false;

1.布尔型,一种数据类型

2.变量名,两个布尔变量

3.给第一个变量bo_1赋值true

4.给第二个变量bo_2赋值false

1.2——例如

bool bo_3=true;

1.定义一个布尔变量 bool

 2.定义一个布尔变量,并填写变量名bo_3;

3.定义一个布尔变量bo_3,并赋值true:       

1.3——true和false都是常量,既可以在定义的时候赋值给布尔变量,也可以在后续的时候赋值给布尔变量。

bool bob_is_adult=true;
bool bob_is_adult=false;
printf("bob是否成年\n",bob_is_adult);

1.定义布尔变量bob_is_adult

2.定义的时候赋值为true

3.第二次赋值为false

4.打印这个变量值

1.4——定义一个变量“今天是周天”,赋值true,并且打印它,先填入定义布尔变量的代码:

bool today_is_sunny=true;
printf("%d\n",today_is_sunnny);

1.先填入定义布尔变量的代码:

2.再填入赋值的true:

3.打印这个变量,填入替代符号%d:

4.最后填入要打印的变量名:

输出结果

1

1.5-- 很巧的是,这里的格式化输出也是用的整型的%d,这是因为布尔型里面的true就是整型的1,false就是整型的0,所以我们输出的时候直接使用整型的输出符号%d

1.7 

 C语言中对整型,浮点型也有真和假的定义,对于整型和浮点型来说,如果值是0,就等价为假;如果这个值是0以外的任何数,就等价为真。

早期的C语言版本是没有布尔数的,直到它发展到晚期,才加入了布尔数,因此我们要在C语言程序中正常使用布尔数的话,还需要修改一下程序结构,让我们可以很方便的使用布尔数

我们需要加入头文件,include <stdbool.h>,让我们可以使用数据类型bool,以及布尔数的两个值,true(1)和false(0)

#include<stdio.h>
#incllude<stdbool.h>
int main(){
bool bo_1=true;
bool bo_2=false;
printf("%d\n",bo_1);
printf("%d\n",bo_2);
return 0;
}

1.增加的头文件,<stdbool.h>

2 "%d\n" .输出的数字也是一个整型

3.false是0

4.true是1

2.比较运算

我们一共会学习六种比较运算,分别是大于号>,小于号<,大于等于号>=,小于等于号<=,等于符号==,不等于符号!=

2.1-在编程中我们使用这些常见的数学符号来进行比较运算,比如比较两个数的大小,或者两个数相等/不相等。

5>4;
7<8;
6>=5;
7<=9;
4=4;
5!=4;

1.大于符号>,比较结果为真true

2.小于符号<,比较结果为真true

3.大于等于符号>=,比较结果为真true

4.小于等于符号<=,比较结果为真true

5.等于符号==,比较结果为真true

6.不等于符号!=,比较结果为真true

对于比较运算来说,结果也是要么为真true,要么为假false

2.2-任何一次比较运算的结果,都是一个布尔数,我们可以打印一下比较运算的布尔数结果:

printf("%d\n",5>1);

1. %d  布尔数结果是用整型的格式进行输出

2. 5>1  一次比较运算,结果为true

3.打印变量bo_1的

3.易错点

 eg:

头文件stdbool.h

里面定义了bool、true、false,让我们可以定义布尔类型

eg;

注意等于符号和赋值符号的区别

赋值符号是一个等号=,作用是把一个数据装入变量

等于符号是两个等号==,作用是比较两个数是否相等

而不等于符号!=,就是一个感叹号加一个等于号。

4.思维导图

 在撰写这篇文章时,我参考了《白纸编程》这个app的观点和思想,我要感谢他们对我的启发和帮助。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/46132.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Codeforces EDU 151 Div.2

文章目录 A. Forbidden IntegerB. Come TogetherC. Strong PasswordD. Rating SystemE. Boxes and Balls A. Forbidden Integer Problem - A - Codeforces 给定整数n&#xff0c;从1~k中选择除了x的数&#xff0c;使这些数之和为n&#xff0c;每个数可以选择无限次 爆搜&…

[Vue]解决npm run dev报错node:internal/modules/cjs/loader:1031 throw err;

解决: 有2中方法&#xff0c;建议先尝试第一种&#xff0c;不行再第二种 第一种: 重新安装依赖环境 删除项目的node_modules文件夹&#xff0c;重新执行 # 安装依赖环境 npm install# 运行 npm run dev 我只用了第一种方法就可以了 &#xff0c;第二种方法从别的博主那看到…

【Java 动态数据统计图】动态数据统计思路案例(动态,排序,数组)二(113)

需求&#xff1a; 有一个List<Map<String.Object>>,存储了区域的数据&#xff0c; 数据是根据用户查询条件进行显示的&#xff1b;所以查询的数据是动态的&#xff1b;按区域维度统计每个区域出现的次数&#xff0c;并且按照次数的大小排序&#xff08;升序&#…

最新ChatGPT网站AI系统源码+详细图文搭建教程/支持GPT4.0/AI绘画/H5端/Prompt知识库/

一、前言 SparkAi系统是基于国外很火的ChatGPT进行开发的Ai智能问答系统。本期针对源码系统整体测试下来非常完美&#xff0c;可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。 那么如何搭建部署AI创作ChatGPT&#xff1f;小编这里写一个详细图文教程吧&#xff01…

从 Ansible Galaxy 使用角色

从 Ansible Galaxy 使用角色 根据下列要求&#xff0c;创建一个名为 /home/curtis/ansible/roles.yml 的 playbook &#xff1a; playbook 中包含一个 play&#xff0c; 该 play 在 balancers 主机组中的主机上运行并将使用 balancer 角色。 此角色配置一项服务&#xff0c;以…

Docker容器:docker镜像的创建及dockerfile

Docker容器&#xff1a;docker镜像的创建及dockerfile案例 一.docker镜像的三种创建方法 创建镜像有三种方法&#xff1a;基于现有镜像创建、基于本地模板创建及基于dockerfile创建 1.基于现有镜像创建 1.1 启动镜像 #首先启动一个镜像&#xff0c;在容器里做修改 docker …

SpringBoot常用注解-@PathVariable、@RequestParam 、@RequestBody

目录 PathVariable RequestParam RequestBody PathVariable PathVariable 获取url中的数据&#xff0c;绑定路径中的占位符参数到方法参数变量中&#xff0c;get或者post方式都可以&#xff0c;如果URL中无参数&#xff0c;将会出错 例如获取/login/id/name中的id值和name值 …

途乐证券|定增募资是什么意思?

作为融资手法之一&#xff0c;定增募资在企业中被广泛运用。但一般投资者对此或许不太了解&#xff0c;只知道它是一种融资手法。那么&#xff0c;定增募资到底是什么意思呢&#xff1f; 一、什么是定增募资&#xff1f; 定增募资即定向增发股票募集资金&#xff0c;是新股票发…

C++入门知识点——解决C语言不足

&#x1f636;‍&#x1f32b;️Take your time ! &#x1f636;‍&#x1f32b;️ &#x1f4a5;个人主页&#xff1a;&#x1f525;&#x1f525;&#x1f525;大魔王&#x1f525;&#x1f525;&#x1f525; &#x1f4a5;代码仓库&#xff1a;&#x1f525;&#x1f525;魔…

【C# 基础精讲】LINQ to Objects查询

LINQ to Objects是LINQ技术在C#中的一种应用&#xff0c;它专门用于对内存中的对象集合进行查询和操作。通过使用LINQ to Objects&#xff0c;您可以使用统一的语法来查询、过滤、排序、分组等操作各种.NET对象。本文将详细介绍LINQ to Objects的基本概念、常见的操作和示例&am…

Android Studio实现读取本地相册文件并展示

目录 原文链接效果 代码activity_main.xmlMainActivity 原文链接 效果 代码 activity_main.xml 需要有一个按钮和image来展示图片 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas.android.com/apk…

Error creating bean with name ‘esUtils‘ defined in file

报错异常&#xff1a; 背景&#xff1a; esUtils在common服务中、启动media服务时候、报这个异常、后排查esUtils在启动时候发生异常引起的、在相关bean中加入try{}catch{}即可解决问题 String[] split url.split(","); HttpHost[] httpHosts new HttpHost[split.…

FirmAE 工具安装(解决克隆失败 网络问题解决)

FirmAE官方推荐使用Ubuntu 18.04系统进行安装部署&#xff0c;FirmAE工具的安装部署十分简单&#xff0c;只需要拉取工具仓库后执行安装脚本即可。 首先运行git clone --recursive https://kgithub.com/pr0v3rbs/FirmAE命令 拉取FirmAE工具仓库&#xff0c;因为网络的问题&…

c语言每日一练(10)

前言&#xff1a;每日一练系列&#xff0c;每一期都包含5道选择题&#xff0c;2道编程题&#xff0c;博主会尽可能详细地进行讲解&#xff0c;令初学者也能听的清晰。每日一练系列会持续更新&#xff0c;暑假时三天之内必有一更&#xff0c;到了开学之后&#xff0c;将看学业情…

验证评估守护关基安全 赛宁数字孪生靶场创新实践

​​近日&#xff0c;由赛宁网安主办&#xff0c;ISC互联网安全大会组委会协办的第十一届互联网安全大会&#xff08;ISC 2023&#xff09;安全运营实践论坛圆满结束。赛宁网安产品总监史崯出席并作出主题演讲&#xff1a;《基于数字孪生靶场如何开展验证评估》&#xff0c;同时…

Linux工具【2】(调试器gdb、项目自动化构建工具make/Makefile)

gdb、make/Makefile 引言调试器gdb介绍常用指令 自动化构建工具make/Makefile介绍使用依赖关系与依赖方法编辑Makefile伪目标 总结 引言 在上一篇文章中介绍了Linux中的编辑器vim与编译器gcc与g&#xff1a; 戳我看vim与gcc详解哦 在本篇文章中将继续来介绍Linux中的工具&…

【Apollo学习笔记】——规划模块TASK之LANE_CHANGE_DECIDER

文章目录 前言LANE_CHANGE_DECIDER功能简介LANE_CHANGE_DECIDER相关配置LANE_CHANGE_DECIDER总体流程LANE_CHANGE_DECIDER相关子函数PrioritizeChangeLaneUpdateStatusIsClearToChangeLaneHysteresisFilter 参考 前言 在Apollo星火计划学习笔记——Apollo路径规划算法原理与实…

TCP定制协议,序列化和反序列化

目录 前言 1.理解协议 2.网络版本计算器 2.1设计思路 2.2接口设计 2.3代码实现&#xff1a; 2.4编译测试 总结 前言 在之前的文章中&#xff0c;我们说TCP是面向字节流的&#xff0c;但是可能对于面向字节流这个概念&#xff0c;其实并不理解的&#xff0c;今天我们要介…

nginx反向代理后实现nginx和apache两种web服务器能够记录客户端的真实IP地址

一.构建环境 二.配置反向代理 1.基于源码安装的nginx环境下修改nginx.conf&#xff08;设备1&#xff09; 2.通过windows powershell进行修改hosts文件并测试 3.设备2和设备3上查看日志&#xff0c;可以看到访问来源都是代理服务器&#xff08;2.190&#xff09;而不是真实…

WebSocket服务端数据推送及心跳机制(Spring Boot + VUE)

一、WebSocket简介 HTML5规范在传统的web交互基础上为我们带来了众多的新特性&#xff0c;随着web技术被广泛用于web APP的开发&#xff0c;这些新特性得以推广和使用&#xff0c;而websocket作为一种新的web通信技术具有巨大意义。WebSocket是HTML5新增的协议&#xff0c;它的…