switch详解(简单全面)

今天我们来讲讲我所了解的多重选择语句:switch。

根据本人多年从业以及学习经验,录制了一套最新的Java精讲视频教程,如果你现在也在学习Java,在入门学习Java的过程当中缺乏系统的学习教程,你可以加群654631948领取下学习资料,面试题,开发工具等,群里有资深java老师做答疑,每天也会有基础部分及架构的直播课,也可以加我的微信renlliang2013做深入沟通,只要是真心想学习Java的人都欢迎。

java基础教程:https://ke.qq.com/course/149432?tuin=57912c43


Java分布式互联网架构/微服务/高性能/springboot/springcloud:

https://ke.qq.com/course/179440?tuin=57912c43

一般形式:

switch(表达式){ 

    case 常量表达式1:  语句1;
    case 常量表达式2:  语句2;
    … 
    case 常量表达式n:  语句n;
    default:  语句n+1;
}

意思是先计算表达式的值,再逐个和case 后的常量表达式比较,若不等则继续往下比较,若一直不等,则执行default后的语句;若等于某一个常量表达式,则从这个表达式后的语句开始执行,并执行后面所有case后的语句。

与if语句的不同:If语句中若判断为真则只执行这个判断后的语句,执行完就跳出if语句,不会执行其他if语句;

                           而switch语句不会在执行判断为真后的语句之后跳出循环,而是继续执行后面所有case语句。在每一case语句之后增加break 语句,                               使每一次执行之后均可跳出switch语句,从而避免输出不应有的结果。

例题:

期末班长小Q决定将剩余班费X元钱用于购买若干支钢笔进行奖励.商店里有三种钢笔,单价分别为6元、5元
和4元.小Q想购买尽量多的笔(奖励尽量多的同学),并且不剩余钱.帮小Q制定出一种买笔的方案.(提示:因为要奖励尽量多的同学,用X元整除最便宜钢笔价格4可能得出余数0、1、2、3,再根据四种余数情况分别判断三种笔各有多少支.)
 

#include<iostream>
using namespace std;
int main()
{
	int a,b,c;//6 5 4元的笔
	int x;
	cin>>x;
	c=x/4;//4元的笔最多购买数目 
	int y=x%4;//购买完c只4元的笔后剩余的钱数 
	switch(y)//判断购买方案 
	{
		case 0:a=0;b=0;break;
		case 1:a=0;b=1;c--;break;//5 
		case 2:a=1;b=0;c--;break;//6
		case 3:a=1;b=1;c-=2;break; //5 6
	} 
	cout<<a<<" "<<b<<" "<<c<<endl;
	return 0;
} 

 

 

  • 51
    点赞
  • 123
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

renlianggee

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值