switch 中 break 和 continue 的区别[通俗易懂]

switch 中 break 和 continue 的区别[通俗易懂]1、break用来退出switch,continue本身是不能用在switch里的,他必须结合循环来用,表示跳过本次循环2、switch的case语句最后如果没有加break/continue,则程序会一直往后执行,可以借鉴goto跳转到位置,其实switch本身可以看作某种形式的跳转,而C语言中本身是不执行:的那条语句的,例如,如果程序中出现一条语句wtch…

大家好,又见面了,我是你们的朋友全栈君。

1、break 用来退出 switch,continue 本身是不能用在 switch 里的,他必须结合循环来用,表示跳过本次循环
2、switch 的 case 语句最后如果没有加 break / continue,则程序会一直往后执行,可以借鉴 goto 跳转到位置,其实 switch 本身可以看作某种形式的跳转,而 C 语言中本身是不执行:的那条语句的,例如,如果程序中出现一条语句 wtch : ,C 语言是默认跳过的,这就很好理解为什么 swtich 中为什么需要在 case 语句最后加 break / continue 了,同样 : 前面不管是什么都不要事先去定义的

3、下面的程序就很好的能反应出switch 中的 break / continue 用法,同时 pro 没定义也不会出错:

/*************************************************************************
  > File Name: t.c
  > Author: Wenfei6316
  > Mail: 2500873570@qq.com 
  > Created Time: 2018年03月12日 星期一 20时37分51秒
 ************************************************************************/

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main(int argc, const char *argv[])
{
	int i = 0;
	int num = 3;
	while (num)
	{
		printf("++++++++++++++++++++++++++++++++++\n");
		switch (i)
		{
		case 0:			
			printf("i = %d\n", i++);
			i++;
		case 1:			
			printf("i = %d\n", i);
			i = i + 2;
			continue;
		case 2:			
			printf("i = %d\n", i--);
			i--;
			break;
		case 3:
			printf("i = %d\n", i);
			continue;
		case 4:
			printf("i = %d\n", i);
			i++;
			break;
		default:
			printf("i = %d\n", i);
			i = 2;			
			break;

		}		
		printf("----------------------------------\n");
		num--;
		printf("num = %d\n", num);
	}
pro:
	printf("hello world!\n");	

	return 0;
}
 
 运行结果如下:
 ++++++++++++++++++++++++++++++++++
i = 0
i = 2
++++++++++++++++++++++++++++++++++
i = 4
----------------------------------
num = 2
++++++++++++++++++++++++++++++++++
i = 5
----------------------------------
num = 1
++++++++++++++++++++++++++++++++++
i = 2
----------------------------------
num = 0
hello world!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/137431.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 区块链工程师需要掌握哪些技能?

    作者:Annchain(本文一切著作权归annchain技术团队所有,未经许可,不得转载。若需转载请联系页尾二维码。) 从2017年开始,区块链逐步成为互联网的风口浪尖。曝光度的激增带来了人才市场的火爆。 区块链所要求的知识并非什么特殊的或者新兴的知识,除了密码学领域的知识需要专门了解之外,其他知识和技能几乎都是一些比较通用的网络开发核心知识。 由于区块链行业涉及到的范…

    2022年4月5日
    55
  • 计算机网络原理(谢希仁第八版)第六章课后习题答案

    计算机网络原理(谢希仁第八版)第六章课后习题答案第六章

    2022年6月22日
    40
  • Gamma校正及其实现

    Gamma校正及其实现图2中左图为原图,中图为gamma = 1/2.2在校正结果,原图中左半侧的灰度值较高,右半侧的灰度值较低,经过gamma = 1/2.2校正后(中图),左侧的对比度降低(见胡须),右侧在对比度提高(明显可以看清面容),同时图像在的整体灰度值提高。右图为gamma = 2.2在校正结果,校正后,左侧的对比度提高(见胡须),右侧在对比度降低(面容更不清楚了),同时图像在的整体灰度值降低。

    2022年6月17日
    21
  • 官宣:荣耀10GT,EMUI9.0不限量升级指日可待

    官宣:荣耀10GT,EMUI9.0不限量升级指日可待

    2021年6月15日
    135
  • noip2014普及组初赛答案_csp提高组一等奖

    noip2014普及组初赛答案_csp提高组一等奖题目背景NOIP2011提高组DAY2试题3。题目描述风景迷人的小城Y市,拥有n个美丽的景点。由于慕名而来的游客越来越多,Y市特意安排了一辆观光公交车,为游客提供更便捷的交通服务。观光公交车在第0分钟出现在1号景点,随后依次前往2、3、4……n号景点。从第i号景点开到第i+1号景点需要Di分钟。任意时刻,公交车只能往前开,或在景点处等待。设…

    2022年9月23日
    2
  • 8位双向移位寄存器verilog设计

    8位双向移位寄存器verilog设计系统功能设计一个8位双向移位寄存器,实现并行输入数据、数据左移、右移、清空数据的功能。程序主要包括移位寄存器模块和按键去抖模块①Key1控制拨码输入:a)key_flag1,key_state1实现Key1去抖(if(key_flag1&&(!key_state1)));b)key_cnt[3:0]从0开始在每一次Key1按下后加1,累积到3后再按下Key1,key_cnt清零;c)en_num1为高4位输入使能信号,en_num2为低4位输入使能信

    2022年7月16日
    15

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号