语言的条件语句

news2024/9/22 20:12:09

万事都有第二种可能,如果不是,那一定有第三种可能。条件语句一般分为如下三种:

  • if/else
  • 条件表达式 a ? b : c
  • switch多分支选择

条件语句形态

大部分编程语言用括号表示条件,单条或复合语句作为条件执行。

  • 最早Fortran就有if语句概念,不过当然都是用大写字母IF ... THEN ... END IF.
  • Python定义了一套缩进规则,条件左右不需要括号(Go也吸收这种便捷方式),缩进后的语句作为执行,当然也不需要大括号或者其他形式包起来。
  • Shell语言在中括号内写条件,要求中括号前后需要有空格,执行语句不需要大括号,自然写出即可。
  • Perl要求if或else之后一定有大括号,不管是否是单条语句。

嵌套的条件语句

  • 万事都有N种可能,每种可能还有M种可能。
  • 嵌套if/else可能造成混乱,究竟哪个if对着哪个else? 最简单的原则就是else总跟在前面跟它最近且未与其他else匹配的if.
    • 对于C/C++/Java等编程语言产生混乱的另外一个原因是它们更加自由,编译器通常忽略空格和缩进,且条件单条语句不需要用{}包裹。语言标准没有明确,就要求代码规范约束程序员。
    • 而对于Perl/Algol而言,不存在这种情形,语法要求如果有if嵌套,一定要加复合语句。对强制要求有if/then/else/end的语言,也不存在if/else嵌套混乱的问题。

条件语句的本质

从汇编语言的角度,条件语句对应于汇编代码cmp/jmp/j*之类的比较和跳转指令。


微风不燥,阳光正好,你就像风一样经过这里,愿你停留的片刻温暖舒心。

我是程序员小迷(致力于C、C++、Java、Kotlin、Android、iOS、Shell、JavaScript、TypeScript、Python等编程技术的技巧经验分享),若作品对您有帮助,请关注、分享、点赞、收藏、在看、喜欢,您的支持是我们为您提供帮助的最大动力。

欢迎关注。助您在编程路上越走越好!

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

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

相关文章

从 Affine Particle-In-Cell (APIC) 到 Material Point Method (MPM 物质点法)

APIC与MPM Particle-In-Cell (PIC)Affine Particle-In-Cell (APIC)Material Point Method (MPM)关于边界投影等额外操作 Material Point Method (MPM 物质点法)是一种混合欧拉-拉格朗日视角物理仿真方法。 欧拉视角即网格视角,将空间划分为网格,通过表示…

【永磁同步电机(PMSM)】 5. PMSM 的仿真模型

【永磁同步电机(PMSM)】 5. PMSM 的仿真模型 1. 基于 Simulink 的仿真模型1.1 PMSM 的数学模型1.2 Simulink 仿真模型1.3 模块封装(mask)1.4 三相PMSM矢量控制仿真模型 2. Simscape 的 PMSM 模块2.1 PMSM 模块的配置2.2 PMSM 模块…

秃头篇——二叉树进阶算法题

一、根据二叉树创建字符串 题目: 思路:这个题很明显需要我们采用二叉树的递归实现(前序遍历),但有一个注意的点:空括号能不能省略的问题,其实我们发现只要左为空,右不为空不能省略括…

[JavaEE] 网络初识(网络通信 及 TCP / UDP / IP 封装分用 )

Author:MTingle major:人工智能 --------------------------------------- Build your hopes like a tower! 文章目录 目录 文章目录 一. 网络通信基础 1. 局域网LAN 2. ⼴域⽹WAN 3. IP地址 4. 端口号 二.协议 1. 五元组 2. 协议分层 协议分层的优点: 3. OSI七层协…

OJ在线评测系统 后端开发数据库初始化工作 开发库表 建立数据库索引 Mybatis映射初始化接口开发

后端接口开发库表设计 项目主业务流程的开发 1.用户模块 注册(后端已实现) 登录(后端已实现 前端已实现) 2.题目模块 创建题目(管理员) 删除题目(管理员) 修改题目&#xff0…

基于SpringBoot+Vue+MySQL的校园一卡通系统

系统展示 用户前台界面 管理员后台界面 系统背景 随着现代社会的快速发展,校园一卡通已成为大学生活中不可或缺的一部分。它不仅承载着校园消费的功能,还集成了学生身份证明、图书馆借阅、门禁系统等多种服务。然而,传统的一卡通管理系统往往…

阿里HPN-用于大型语言模型训练的数据中心网络

阿里巴巴HPN:用于大型语言模型训练的数据中心网络 探索大规模语言模型训练新方法:阿里巴巴HPN数据中心网络论文。 摘要 本文介绍了阿里云用于大型语言模型(LLM)训练的数据中心网络HPN。由于LLM和一般云计算之间的差异(例如,在流量模式和容错性方面)&…

【机器学习】12-决策树1——概念、特征选择

机器学习10-决策树1 学习样本的特征,将样本划分到不同的类别(分类问题)或预测连续的数值(回归问题)。 选择特征,划分数据集,划分完成形成模型(树结构),一个…

新手必看:一步步教你绑定常见邮箱到第三方应用(如何绑定QQ、163、Hotmail、Gmail等邮箱)

文章目录 📖 介绍 📖🏡 演示环境 🏡📒 邮箱绑定 📒📫 QQ邮箱📫 163邮箱📫 Hotmail邮箱📫 Gmail邮箱📫 Yahoo邮箱📫 iCloud邮箱📫 其他邮箱⚓️ 相关链接 ⚓️📖 介绍 📖 你是否曾经为绑定第三方邮箱而感到困惑?你不是一个人!许多人在尝试将QQ邮…

QT创建菜单

增加显示信息

MySQL数据库的增删改查以及基本操作分享

1、登录MySQL数据库 首先找到你安装MySQL数据库的目录,然后在终端打开该目录,输入以下命令 mysql -u root -p然后输入密码就可以登录数据库了,看到如下页面就是登陆成功了 ***注意在终端操纵数据库时所有语句写完之后一定要加 &#xff1…

【线程】线程的同步

本文重点:理解条件变量和生产者消费者模型 同步是在保证数据安全的情况下,让我们的线程访问资源具有一定的顺序性 条件变量cond 当一个线程互斥地访问某个变量时,它可能发现在其它线程改变状态之前,它什么也做不了,…

CSS 选择器的分类与使用要点一

目录 非 VIP 用户可前往公众号进行免费阅读 标签选择器 id 选择器 类选择器 介绍 公共类 CSS 中优先用 class 选择器,慎用 id 选择器 后代选择器 交集选择器 以标签名作为开头 以类名作为开头 连续交集 并集选择器(分组选择器) 通配符* 儿子选择器 >(IE7…

Elasticsearch——介绍、安装与初步使用

目录 1.初识 Elasticsearch1.1.了解 ES1.1.1.Elasticsearch 的作用1.1.2.ELK技术栈1.1.3.Elasticsearch 和 Lucene1.1.4.为什么不是其他搜索技术?1.1.5.总结 1.2.倒排索引1.2.1.正向索引1.2.2.倒排索引1.2.3.正向和倒排 1.3.Elasticsearch 的一些概念1.3.1.文档和字…

基于单片机的智能温控风扇系统的设计

[摘 要] 设计一种基于单片机的智能温控风扇系统,系统由 STC 系列的 51 单片机 、 温度传感器 、 LED 数码管和风扇等模块组成。 本系统具有对外界温度感知以及对感知数据进行分析处理 、 智能调节等功能,避免因温度过高而产生…

【全部更新】2024华为杯数学建模研赛F题思路代码文章全国研究生数学建模-X射线脉冲星光子到达时间建模

截止9.22 14:00 已更新全部文章内容完整求解代码(正版授权) ### https://docs.qq.com/doc/DVVBUREF2SmFhRUl3X射线脉冲星光子到达时间建模 摘要 脉冲星是一类高速自转的中子星,其自转形成规律性脉冲信号,类似于“宇宙中的灯塔”,因此被认为是…

鸿蒙 WebView 如何 Debug

前置: hdc chrome //----------------------------------------------------------------------------------------------- hdc shell cat /proc/net/unix | grep devtools 0: 00000002 0 10000 1 1 81134005 webview_devtools_remote_62479exit执行&…

[001-02-001].第2节:java开发环境搭建

4.1.书籍推荐: 4.2.人机交互方式 1.图形化界面(Graphical User Interface GUI)这种方式简单直观,使用者易于接受,容易上手操作2.命令行方式(Command Line Interface CLI):需要有一个控制台,输入特定的指令&#xff0c…

828华为云征文|云服务器Flexus X实例|MacOS系统-宝塔部署Nuxt项目

文章目录 1. Flexus云服务器X实例1.1 与Flexus应用服务器L实例相比具备以下优势1.2 服务器的详细配置 2.宝塔部署Nuxt项目2.1 登录实例2.1 宝塔面板 3. Nuxt 项目与部署3.1 Nuxt3.2创建Nuxt项目3.3 部署3.4 部署成功 4.结语 1. Flexus云服务器X实例 华为云的Flexus云服务是为中…

股指期权交易详细基础介绍

股指期权是期权市场中的一种特定类型,其标的资产为股票指数。简而言之,它允许投资者在未来某个特定时间,以预先约定的价格,买入或卖出股票指数的权利。在中国,已上市的股指期权包括上证50、沪深300和中证1000股指期权&…