当前位置: 首页 > news >正文

C语言几种判断语句简述

C 判断

判断结构要求程序员指定一个或多个要评估或测试的条件,以及条件为真时要执行的语句(必需的)和条件为假时要执行的语句(可选的)。

C 语言把任何非零和非空的值假定为 true,把零或 null 假定为 false。

下面是大多数编程语言中典型的判断结构的一般形式:在这里插入图片描述

C 中的判断语句

判断语句

C 语言提供了以下类型的判断语句。点击链接查看每个语句的细节。

语句 描述
if 语句
一个 if 语句 由一个布尔表达式后跟一个或多个语句组成。
if…else 语句
一个 if 语句 后可跟一个可选的 else 语句,else 语句在布尔表达式为假时执行。
嵌套 if 语句
您可以在一个 if 或 else if 语句内使用另一个 if 或 else if 语句。
switch 语句
一个 switch 语句允许测试一个变量等于多个值时的情况。
嵌套 switch 语句
您可以在一个 switch 语句内使用另一个 switch 语句。

? : 运算符(三元运算符)

我们已经在前面的章节中讲解了 条件运算符 ? :,可以用来替代 if…else 语句。它的一般形式如下:

Exp1 ? Exp2 : Exp3;
其中,Exp1、Exp2 和 Exp3 是表达式。请注意,冒号的使用和位置。

? 表达式的值是由 Exp1 决定的。如果 Exp1 为真,则计算 Exp2 的值,结果即为整个表达式的值。如果 Exp1 为假,则计算 Exp3 的值,结果即为整个表达式的值。

实例
以下实例通过输入一个数字来判断它是否为奇数或偶数

实例

#include<stdio.h>int main()
{int num;printf("输入一个数字 : ");scanf("%d",&num);(num%2==0)?printf("偶数"):printf("奇数");
}
#include <stdio.h>
int main()
{int year,result = 0;printf("请输入年份:");scanf("%d",&year);if(year%4==0){if (year%100!=0){result = 1;}else if (year%400==0){result = 1;}else{result = 0;}} else{result = 0;}if (result==1){printf("%d是闰年",year);} else{printf("%d不是闰年",year);}return 0;
}
运行编译上面的源代码,输入2024将会输出以下结果:2024是闰年

switch语句实例:简单的计算器

源代码如下:#include<stdio.h>
int main()
{float a,b;char c;printf("请按照顺序输入 一位整数、运算符号、一位整数:\n");printf("例如:计算3+2,可依次输入3+2 \n");scanf("%f%c%f",&a,&c,&b);switch(c){case '+' :printf("%f %c %f = %f \n",a,c,b,a+b);break;case '-' :printf("%f %c %f = %f \n",a,c,b,a-b);break;case '*' :printf("%f %c %f = %f \n",a,c,b,a*b);break;case '/' :printf("%f %c %f = %f \n",a,c,b,a/b);break;}return 0;
}
运行编译上面的源代码,输入3+5将会输出以下结果:3.000000 + 5.000000 = 8.00000
#include<stdio.h>
int main()
{int number;printf("输入一个数字 : ");scanf("%d",&number);(number%2==0) ? printf("%d是偶数",number) : printf("%d是奇数",number);return 0;
}
运行编译上面的源代码,输入12将会输出以下结果:12是偶数

相关文章:

C语言几种判断语句简述

C 判断 判断结构要求程序员指定一个或多个要评估或测试的条件&#xff0c;以及条件为真时要执行的语句&#xff08;必需的&#xff09;和条件为假时要执行的语句&#xff08;可选的&#xff09;。 C 语言把任何非零和非空的值假定为 true&#xff0c;把零或 null 假定为 fals…...

【python学习笔记】:SQL常用脚本(二)

11、四舍五入ROUND函数 ROUND ( numeric_expression , length [ ,function ] ) function 必须为 tinyint、smallint 或 int。 如果省略 function 或其值为 0&#xff08;默认值&#xff09;&#xff0c;则将舍入 numeric_expression。 如果指定了0以外的值&#xff0c;则将截…...

【Linux】进程地址空间

文章目录&#x1f3aa; 进程地址空间&#x1f680;1.写时拷贝与虚拟地址&#x1f680;2.地址空间引入&#x1f680;3.地址空间的意义⭐3.1 虚拟地址寻址⭐3.2 虚拟地址意义&#x1f3aa; 进程地址空间 地址空间&#xff08;address space&#xff09;表示任何一个计算机实体所…...

Qt音视频开发17-vlc内核回调拿图片进行绘制

一、前言 在众多播放器中&#xff0c;支持的种类格式众多&#xff0c;并支持DVD影音光盘&#xff0c;VCD影音光盘及各类流式协议&#xff0c;提供了sdk进行开发&#xff0c;这点是至关重要的&#xff0c;尽管很多优秀的播放器很牛逼&#xff0c;由于没有提供sdk第三方开发&…...

安装配置DHCP

本次实验采用CentOS71.检查在安装DHCP之前先使用rpm命令查看系统中已有的DHCP软件包rpm -qa | grep dhcp由此可知&#xff0c;系统中尚未安装DHCP软件包2.安装我们可以使用yum命令为系统安装DHCP软件包yum -y install dhcp安装完成后再次检查可以看到DHCP软件包3.配置dhcp配置文…...

MarkDown中写UML图的方法

目录序UML图之顺序图顺序图的四个要素关于消息箭头的语法Mermaid中顺序图的简单例子样例用小人表示对象为对象设置别名激活对象UML图之类图类图中常见的关系关于不同类型关系的语法Mermaid中类图的简单例子样例类定义的两种方式为类定义成员双向关系的表示多重性关系的表示UML之…...

Axure8设计—动态仪表盘

本次分享的的案例是Axure8制作的动态仪表盘,根据设置的数值&#xff0c;仪表盘指针旋转到相应的值位置 预览地址&#xff1a;https://2qiuwg.axshare.com 下载地址&#xff1a;https://download.csdn.net/download/weixin_43516258/87502161 一、制作原型 1、首先创建空白页…...

【C++】类和对象的六个默认成员函数

类的6个默认成员函数构造函数概念特性析构函数概念特性拷贝构造函数概念特征拷贝构造函数典型调用场景&#xff1a;赋值运算符重载运算符重载赋值运算符重载取地址及const取地址操作符重载类的6个默认成员函数 到底什么是类的6个默认成员函数呢&#xff1f;相信大家一定对此怀…...

4、算法MATLAB---认识矩阵

认识矩阵1、矩阵定义和基本运算1.1 赋值运算符&#xff1a;1.2 等号运算符&#xff1a;1.3 空矩阵1.4 一行一列矩阵1.5 行矩阵&#xff08;元素用空格或逗号分隔&#xff09;1.6 列矩阵&#xff08;分号表示换行&#xff09;1.7 m行n列的矩阵&#xff1a;行值用逗号间隔&#x…...

vue3+rust个人博客建站日记2-确定需求

反思 有人说过我们正在临近代码的终结点。很快&#xff0c;代码就会自动产生出来&#xff0c;不需要再人工编写。程序员完全没用了&#xff0c;因为商务人士可以从规约直接生成程序。 扯淡&#xff01;我们永远抛不掉代码&#xff0c;因为代码呈现了需求的细节。在某些层面上&a…...

Linux安装云原生网关Kong/KongA

目录1 概述2 创建服务器3 安装postgres4 安装kong5 安装node6 安装KONGA1 概述 Kong Kong是一款基于OpenResty&#xff08;NginxLua模块&#xff09;编写的高可用、易扩展的开源API网关&#xff0c;专为云原生和云混合架构而建&#xff0c;并针对微服务和分布式架构进行了特别…...

Vue学习笔记(2)

2.1 事件处理 2.1.1 事件监听器 JavaScript&#xff1a;通过获取DOM对象再往DOM对象上使用addEventListener注册监听事件 const btn document.querySelector(#my-button) btn.addEventListener(click, function() {alert(点击事件!) })jQuery&#xff1a;通过$选择器绑定对象…...

2023年三月份图形化四级打卡试题

活动时间 从2023年3月1日至3月21日&#xff0c;每天一道编程题。 本次打卡的规则如下&#xff1a; 小朋友每天利用10~15分钟做一道编程题&#xff0c;遇到问题就来群内讨论&#xff0c;我来给大家答疑。 小朋友做完题目后&#xff0c;截图到朋友圈打卡并把打卡的截图发到活动群…...

Python操作Excel

Python中对Excel文件的操作包括&#xff1a;读、写、修改。如果要对其进行如上的操作需要导入Python的第三方模块&#xff1a;xlrd、xlwd、xlutils&#xff0c;其分别对应Python的读、写、修改的操作 一、安装Python的第三方模块 二、操作Excel的基本步骤 1、导入响对应的模…...

Codeforces Round #853 (Div. 2) C. Serval and Toxel‘s Arrays【统计次数,算贡献】

链接 传送门 分析 这道题想法其实很简单&#xff0c;样例的计算方法一定要看懂。以样例1为例&#xff0c;根据他的操作方法可以得到两个新的数组&#xff0c;和一个原来的数组&#xff0c;总共三个数组。 1 2 3 4 2 3 4 5 3 他们两两配对去重&#xff0c;求出总的value。由于每…...

微信小程序-1:比较两数的大小

程序来源》微信小程序开发教程&#xff08;第二章&#xff09; 主编&#xff1a;黄寿孟、易芳、陶延涛 ISBN&#xff1a; 9787566720788 程序运行结果&#xff1a; <!--index.wxml--> <view class"container"> <text>第一个数字&#xff1a;&…...

数据结构——树

深度优先/广度优先遍历深度优先&#xff1a;访问根节点对根节点的 children 挨个进行深度优先遍历const tree {val: "a",children: [{val: "b",children: [{val: "d",children: [],},{val: "e",children: [],},],},{val: "c&quo…...

【华为OD机试模拟题】用 C++ 实现 - 找到它(2023.Q1)

最近更新的博客 【华为OD机试模拟题】用 C++ 实现 - 去重求和(2023.Q1) 文章目录 最近更新的博客使用说明找到它题目输入输出示例一输入输出示例二输入输出说明Code使用说明 参加华为od机试,一定要注意不要完全背诵代码,需要理解之后模仿写出,通过率才会高。 华为 OD …...

python中yield的使用

在 Python 中&#xff0c;yield 是一个关键字&#xff0c;它用于定义生成器函数。生成器函数是一个特殊的函数&#xff0c;可以返回一个迭代器&#xff0c;当生成器函数被调用时&#xff0c;它不会立即执行&#xff0c;而是返回一个生成器对象&#xff0c;通过迭代生成器对象可…...

GO进阶(4) 深入Go的内存管理

Go语言成为高生产力语言的原因之一自己管理内存&#xff1a;Go抛弃了C/C中的开发者管理内存的方式&#xff0c;实现了主动申请与主动释放管理&#xff0c;增加了逃逸分析和GC&#xff0c;将开发者从内存管理中释放出来&#xff0c;让开发者有更多的精力去关注软件设计&#xff…...

不用Arduino IDE也能烧录ESP32-CAM?试试这个更简单的工具

告别Arduino IDE&#xff1a;5种高效烧录ESP32-CAM的替代方案 当开发者第一次接触ESP32-CAM时&#xff0c;Arduino IDE往往是默认的烧录工具。但随着时间的推移&#xff0c;许多用户会发现这个"官方推荐"的环境存在诸多限制&#xff1a;臃肿的安装包、缓慢的编译速度…...

《数据结构》| 第十章 排序算法实战指南

1. 排序算法入门&#xff1a;为什么我们需要这么多排序方法&#xff1f; 第一次接触排序算法时&#xff0c;很多人都会有这样的疑问&#xff1a;既然都能把数据排好序&#xff0c;为什么还要学这么多种算法&#xff1f;这就像装修时既有电钻又有锤子——每种工具都有最适合的使…...

Buildroot构建根文件系统时,为什么你的rootfs.tar总比别人的大?深度解析裁剪技巧

Buildroot构建根文件系统时rootfs.tar体积优化实战指南 当你在嵌入式Linux开发中使用Buildroot构建根文件系统时&#xff0c;是否经常遇到生成的rootfs.tar文件体积过大的问题&#xff1f;本文将深入解析Buildroot的打包机制&#xff0c;揭示那些容易被忽视的体积膨胀陷阱&…...

Apollo LQR横向控制实战:从Simulink到C++的完整迁移指南(附ROS节点代码)

Apollo LQR横向控制工程化实战&#xff1a;从仿真验证到C落地的深度解析 在自动驾驶系统的开发流程中&#xff0c;控制算法的工程化落地往往是最具挑战性的环节之一。本文将聚焦LQR&#xff08;线性二次调节器&#xff09;算法在Apollo开源框架中的实际应用&#xff0c;通过完…...

GitHub下载加速终极指南:告别龟速,3分钟让下载速度飙升300%

GitHub下载加速终极指南&#xff1a;告别龟速&#xff0c;3分钟让下载速度飙升300% 【免费下载链接】Fast-GitHub 国内Github下载很慢&#xff0c;用上了这个插件后&#xff0c;下载速度嗖嗖嗖的~&#xff01; 项目地址: https://gitcode.com/gh_mirrors/fa/Fast-GitHub …...

航空装备制造数字孪生怎么做?为什么推荐用Catia+CIMPro孪大师?

今天&#xff0c;我们不谈虚头巴脑的概念&#xff0c;直接聚焦航空装备制造这个硬骨头&#xff0c;聊聊数字孪生到底该怎么做&#xff0c;以及为什么在当前的工具链中&#xff0c;“CatiaCIMPro孪大师”这对组合值得你特别关注。什么类型的行业模型&#xff0c;必须选择Catia&a…...

ICML 2026 开分!投稿群来了!还有IJCAI、CVPR 2026投稿群!

点击下方卡片&#xff0c;关注“CVer”公众号AI/CV重磅干货&#xff0c;第一时间送达点击进入—>【顶会/顶刊】投稿交流群添加微信&#xff1a;CVer2233&#xff0c;助手会拉你进群&#xff01;扫描下方二维码&#xff0c;加入CVer学术星球&#xff01;可获得最新顶会/顶刊上…...

vLLM 5.0.4 实战:从参数解析到批量推理的性能调优指南

1. vLLM 5.0.4核心参数解析与实战配置 初次接触vLLM时&#xff0c;最让人头疼的就是那一长串参数列表。我在实际项目中使用Meta-Llama-3.1-8B-Instruct模型时&#xff0c;就曾因为参数配置不当导致显存爆炸。下面分享几个关键参数的实战经验&#xff1a; LLM类参数中的max_mode…...

基于光伏出力不确定性的梯级水光互补系统短期优化调度模型及Matlab代码复现研究报告

1023-(文章复现)梯级水光互补系统最大化可消纳电量期望短期优化调度模型matlab代码 参考资料《梯级水光互补系统最大化可消纳电量期望短期优化调度模型》 文中考虑光伏出力不确定性&#xff0c;以整体可消纳电量期望最大为目标&#xff0c;提出了梯级水光互补系统的短期优化调度…...

如何为Rainmeter贡献多语言翻译:完整指南

如何为Rainmeter贡献多语言翻译&#xff1a;完整指南 【免费下载链接】rainmeter Desktop customization tool for Windows 项目地址: https://gitcode.com/gh_mirrors/ra/rainmeter Rainmeter作为一款强大的Windows桌面自定义工具&#xff0c;支持全球用户通过多语言界…...