C++学习第十八天----switch语句

1. ?:运算符

        条件运算符,又叫三元运算符;

        该运算符的通用格式为:

                expression1?expression2 :expression3;

        意义是假如1为true,则整个条件表达式的值为2的值,否则为3的值;

2.switch语句

        通用格式为:

switch(integer-expression)
{case label1 : statement(s);case label2 : statement(s);……default : statement(s);
}

            integer-expression的结果必须是整数值,每个标签必须是整数常量表达式    ,可以是int,char常量,也可以是枚举量。

default可以省略,建议switch和break在一起使用,因为运行完一个case,并不会结束程序,而是继续往下执行,不过这也有一个好处,例如;

case 'a' :
case 'A' :cout << "hello world!\n";break;

3.将枚举量用作标签

4.break和countinue语句

        二者都使程序能够跳过部分代码,break在循环中是跳出此循环,在switch中是跳过后面的语句。countinue用于循环中,让程序跳过循环体中后面未被执行的代码,开始新的一轮循环,不是结束循环。

        还有一个特殊的语句:goto语句,在任何情况下都最好不要使用goto语句,但是使用的话确实有出人意料的结果。

goto tiaochu;语句1;
语句2;
……
tiaochu: cout << "over!\n";

5.文本I/O和文本文件

        使用cin进行输入时,程序将输入视为一系列的字节,其中每个字节都被解释为字符编码。不管目标数据类型是什么,输入一开始都是字符数据----文本数据。

        下面将说明使用不同数据类型的变量来存储时,cin是如何处理该输入行的。

首先假设输入行为38.5 19.2char数据类型:
char ch;
cin >> ch;
结果:第一个字符赋给ch,即3,其二进制编码被存储在ch中;int类型:
int n;
cin >> n;
结果:cin不断读取,直到遇到非数字字符,即38,其二进制编码被存储在n中;double类型:
double x;
cin >> x;
结果:不断读取,遇到不属于浮点数的字符,这里即空格,即38.5,char数组:
char word[50];
cin >> word;
结果:不断读取,直到遇到空白字符,这里也是38.5另外一种char数组输入:
char word[50];
cin.getline(word, 50);
结果:不断读取,直到遇到换行符,存储到数组中,并在末尾加一个空字符,换行符被丢弃;

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

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

相关文章

《游戏编程模式》学习笔记(八)双缓冲模式 Sequencing Patterns

双缓冲模式的意图 双缓冲模式&#xff0c;使用序列操作来模拟瞬间或者同时发生的事情 具体定义 双缓冲模式定义缓冲类封装了缓冲&#xff1a;一段可改变的状态。 这个缓冲被增量地修改&#xff0c;但我们想要外部的代码将修改视为单一的原子操作。 为了实现这点&#xff0c;…

Programming abstractions in C阅读笔记:p127-p129

《Programming Abstractions In C》学习第51天&#xff0c;p127-p129&#xff0c;总结如下&#xff1a; 一、技术总结 1. string library 掌握常用函数如strlen&#xff0c;strcpy用法。 2.buffer overflow(缓冲区溢出) (1)什么是buffer? p129&#xff0c;Arrays that a…

死锁的典型情况、产生的必要条件和解决方案

前言 死锁&#xff1a;多个线程同时被阻塞&#xff0c;他们中的一个或全部都在等待某个资源被释放。由于线程被无限期地阻塞&#xff0c;因此程序不可能正常终止。 目录 前言 一、死锁的三种典型情况 &#xff08;一&#xff09;一个线程一把锁 &#xff08;二&#xff09;…

==和===的区别(经典面试题,你不知道的细节)

全等运算符 又叫全等运算符&#xff0c;结果会返回一个布尔值&#xff0c;在数据类型相同的情况下&#xff0c;会比较值&#xff0c;值相同才返回true "1" 1 // false NaN NaN // false undefined undefined // true相等运算符 相等运算符在比较两个变量是否相…

分布式锁解决方案

分布式锁解决方案 背景解决方案redisson 分布式锁 实战zookeeper 分布式锁 实战结论代码地址背景 由于分布式或者集群部署项目时,在某些业务场景下需保证资源的原子性、一致性和互斥性。 如果把房子比作资源,通俗的来讲,我无论在那个城市生活,这个房子我先租的,再没有退房…

dolphinscheduler的僵尸任务清理和清理一直在运行的任务状态

dolphinscheduler的僵尸任务清理 界面操作不了的 只能去数据库更改状态或则删除掉 原因&#xff1a;海豚调度中有几百条僵尸任务&#xff0c; 界面怎么也删不掉&#xff0c;想从数据库中删除&#xff0c;开始查找从数据库删除的办法。 参考以下脚本&#xff0c;结合我库中僵尸…

缓存的设计方式

问题情况&#xff1a; 当有大量的请求到内部系统时&#xff0c;若每一个请求都需要我们操作数据库&#xff0c;例如查询操作&#xff0c;那么对于那种数据基本不怎么变动的数据来说&#xff0c;每一次都去数据库里面查询&#xff0c;是很消耗我们的性能 尤其是对于在海量数据…

抖音火山引擎推出免费域名DNS和公共DNS服务

抖音旗下的云计算服务火山引擎最近推出了"TrafficRoute DNS 套件"服务&#xff0c;其中包括两款产品&#xff0c;对软希网来说非常有用。 1.域名DNS&#xff1a; 这是一个用于网站域名的DNS服务&#xff0c;可以加速域名解析速度&#xff0c;从而提升网站的速度。如…

回归预测 | MATLAB实现GA-RF遗传算法优化随机森林算法多输入单输出回归预测(多指标,多图)

回归预测 | MATLAB实现GA-RF遗传算法优化随机森林算法多输入单输出回归预测&#xff08;多指标&#xff0c;多图&#xff09; 目录 回归预测 | MATLAB实现GA-RF遗传算法优化随机森林算法多输入单输出回归预测&#xff08;多指标&#xff0c;多图&#xff09;效果一览基本介绍程…

mysql的登录与退出

mysql是c/s架构&#xff0c;意味着同时要有客户端和服务端 1 找到客户端。mysql.exe的安装目录 打开命令行 2 输入对应的服务器的ip&#xff0c;如果是本地&#xff0c;就是Localhost&#xff0c;如果是远程服务器&#xff0c;那就输入对应ip/域名。并且指定mysql监听的端口 …

机器视觉之特征匹配

特征匹配是计算机视觉中的一个重要任务&#xff0c;它用于寻找两幅或多幅图像中相对应的特征点&#xff0c;从而识别、跟踪或配准对象。下面是一个使用C和OpenCV进行特征匹配的简单示例&#xff0c;使用SIFT特征检测和FLANN匹配器&#xff08;快速最近邻搜索&#xff09;&#…

混合面试题

索引在单表中建议不要创建的数量超过6个&#xff0c;在大的字段上不要建立索引例如书的目录不要以文章的一个长句子为目录索引 mybatis是半自动的&#xff0c;是JDBC的浅封装&#xff0c;以sql语句的工作量换取了程序执行的高灵活性。 foreach标签&#xff1a;用于循环语句&a…

做一个蛋糕店小程序需要哪些步骤?

对于一些不懂技术的新手来说&#xff0c;创建蛋糕店小程序可能会感到有些困惑。但是&#xff0c;有了乔拓云平台的帮助&#xff0c;你可以轻松地创建自己的蛋糕店小程序。下面&#xff0c;我将为大家详细介绍一下具体的操作步骤。 首先&#xff0c;登录乔拓云平台并进入后台管理…

Mysql报错 mysqladmin flush-hosts

出现这个的原因是错误连接达到数据库设置的最大值。 此时需要释放重置连接最大值。 进入mysql使用命令 flush-hosts;环境说明&#xff1a; 内网测试服务器192.168.18.251 为WEB服务器&#xff0c;安装了mysql; 内网音视频转码服务器192.168.18.253安装了转码工具&#xff0…

Java“牵手”根据关键词搜索(分类搜索)义乌购商品列表页面数据获取方法,义乌购API实现批量商品数据抓取示例

义乌购商城是一个网上批发购物平台&#xff0c;售卖各类商品&#xff0c;包括服装、鞋类、家居用品、美妆产品、电子产品等。要获取义乌购商品列表和商品详情页面数据&#xff0c;您可以通过开放平台的接口或者直接访问义乌购商城的网页来获取商品详情信息。以下是两种常用方法…

网络安全---Ring3下动态链接库.so函数劫持

一、动态链接库劫持原理 1.1、原理 Unix操作系统中&#xff0c;程序运行时会按照一定的规则顺序去查找依赖的动态链接库&#xff0c;当查找到指定的so文件时&#xff0c;动态链接器(/lib/ld-linux.so.X)会将程序所依赖的共享对象进行装载和初始化&#xff0c;而为什么可以使用…

[软件工具]精灵标注助手目标检测数据集格式转VOC或者yolo

有时候我们拿到一个数据集发现是xml文件格式如下&#xff1a; <?xml version"1.0" ?> <doc><path>C:\Users\Administrator\Desktop\test\000000000074.jpg</path><outputs><object><item><name>dog</name>…

7个改变玩法规则的ChatGPT应用场景

ChatGPT因各种原因受到了广泛关注&#xff1a;ChatGPT可以充当各种改善生活改进工作的小助手&#xff0c;如内容写手、客户支持、语言翻译、编码专家等等。只需在你的聊天内容中添加适当的提示&#xff0c;人工智能将为你提供各项支持。[1] 1.ChatGPT作为内容写手 通过AI的帮助…

基于java SpringBoot CRM客户关系管理系统设计

当今计算机技术和信息管理技术的迅速发展和广泛应用&#xff0c;为管理相关理论的应用提供了广阔的平台。IT技术和DBT技术&#xff08;数据库技术&#xff09;基于《客户信息管理系统》设计的客户信息管理系统正在逐步发展成为管理模式发展的新趋势&#xff0c;企业建立客户信息…

常用的数据可视化工具有哪些?要操作简单的

随着数据量的剧增&#xff0c;对分析效率和数据信息传递都带来了不小的挑战&#xff0c;于是数据可视化工具应运而生&#xff0c;通过直观形象的图表来展现、传递数据信息&#xff0c;提高数据分析报表的易读性。那么&#xff0c;常用的操作简单数据可视化工具有哪些&#xff1…