C语言中continue的用法详解

目录
  • 前言
  • continue 在while中的用法
    • continue 在for中的用法
    • continue 在剔除多余元素的用法
  • 附:continue与break的区别
  • 总结

前言

continue语句的作用是跳过本次循环体中余下尚未执行的语句,立即进行下一次的循环条件判定,可以理解为仅结束本次循环。

注意:continue语句并没有使整个循环终止。

continue 在while中的用法

//continue 在while中的用法
#include<stdio.h>
int main()
{
	int i = 1;
	while (i<=10)
	{
		if (i == 5)
		{
			++i;
			continue;
		}
		printf("%d ", i);
		++i;
	}
	printf("\n");
	return 0;
}

以上代码的结果是:

当执行到i==5的时候,会进入if语句中,然后continue返回判断条件继续,不再继续执行下面的语句。在这里要注意,需要i++,不然会一直在这里死循环。

continue 在for中的用法

//continue 在for循环中的使用

#include <stdio.h>
int main()
{
	int i = 1;
	for (int  i = 1; i < 10; i++)
	{
		if (i == 5)
		{
			continue;
		}
		printf("%d ", i);
	}
	printf("\n");
	return 0;
}

以上代码的结果是:

当执行到i==5的时候,会进入if语句中,然后continue返回判断条件继续,不再继续执行下面的语句。在这里要注意,和上面while循环不一样的是,不需要i++,它会跳到i++处,然后在进行判断条件,不会死循环。

continue 在剔除多余元素的用法

以下的代码作用是过滤除了0-9的东西

#include <stdio.h>
int main()
{
	int ch = 0;
	while ((ch = getchar()) != EOF)
	{
		if (ch < '0' || ch > '9')
		{
			continue;

		}
		putchar(ch);
	}
	return 0;
}

以上代码的结果是:

说明:上面的结果,过滤掉了0-9以外的东西,利用getchar()和putchar(),接受字符和打印字符,以文件结束标志EOF结束。所以不管输入的是什么,结果只会输出数字。

==这里要注意EOF的用法:==以ctrl Z结束,直到在屏幕输入ctrlZ,程序就会结束。

附:continue与break的区别

1、break 用来结束所有循环,循环语句不再有执行的机会;continue 用来结束本次循环,直接跳到下一次循环,如果循环条件成立,还会继续循环。

2、在多层循环中, 一个break语句只向外跳一层。continue语句的作用是跳过循环体中剩余的语句并到循环末尾而强行执行下一次循环。

3、break可以在 if-else 中使用直接跳出当前循环。

4、continue语句只用在for、while、do-while等循环体中,常与if条件语句一起使用,用来加速循环。

总结

到此这篇关于C语言中continue用法详解的文章就介绍到这了,更多相关C语言 continue用法内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • C语言中break与continue的用法和区别详解

    目录 前言 一.循环体中两者的作用 1.while循环 2.for循环 3.do while循环 二.switch语句 总结 前言 本文将通过简单的实例来详细分析在C语言中break语句和continue语句的用法和区别,欢迎大家批评指正.(部分内容稍有重复,大家可自行选择跳转目录) 一.循环体中两者的作用 1.while循环 我们先看一个循环示例:此程序在屏幕上打印出数字1-10 int main() { int i = 1; while (i <= 10) { printf("%d &

  • 深入c语言continue和break的区别详解

    自认为C语言还算入门的人,看来还是高估自己了.没想到在这个地方还有这么有趣的东西.有些话看来要仔细深究才能真正入门啊.... ================================================================================ 复制代码 代码如下: #include <stdio.h> int main(void) {    int flag=0;    for(int j=0; j <2; j++) {       if(j=

  • C语言break和continue的语句用法

    目录 1.知识了解 2.for循环中break和continue语句的用法 3.while循环continue语句的用法 ① 4.switch语句中break和continue语句的用法 1.知识了解 在c语言中,为了使用循环控制更灵活,c语言允许在特定条件成立时使用break语句和continue语句控制循环的执行过程 ♞break:用于循环语句和switch语句中,它跳出所在的那一层循环语句或者switch语句. ♞continue:用于循环语句中,他跳出所在的那一轮循环,继续下一轮循环.

  • C 语言中strstr函数实例详解

    C 语言中strstr函数实例详解 strstr函数 strstr(str1,str2) 函数用于判断字符串str2是否是str1的子串.如果是,则该函数返回str2在str1中首次出现的地址:否则,返回NULL const char* strstr(const char* str1,const char* str2); char* strstr(char* str1,const char* str2); 库中实现的strstr #include <stdio.h> #include <

  • Go语言中sync.Cond使用详解

    目录 sync.Cond 可以用来干什么? 与 Sync.Mutex 的区别 sync.Cond 使用场景 sync.Cond sync.Cond 有哪些方法 NewCond 创建实例 Broadcast 广播唤醒所有 Signal 唤醒一个协程 Wait 等待 代码示例 sync.Cond 可以用来干什么? Golang 的 sync 包中的 Cond 实现了一种条件变量,可以使用多个 Reader 等待公共资源. 每个 Cond 都会关联一个 Lock ,当修改条件或者调用 Wait 方法,

  • C语言中的getchar()使用详解

    目录 前言 getchar困惑的点 缓冲区 缓冲区带来的问题 getchar工作原理 解决缓冲区带来的问题之清空缓存区 解决最初的困惑 总结 前言 近期我在重新学习C语言时候,我发现了一个严重的问题,getchar我居然不会用了....也不是说不会用,我发现了一个非常让我困惑想不明白的问题.可能我在第一次接触C语言时候,就没有把这个概念弄清楚吧,以至于现在会不明白. getchar困惑的点 我利用getchar函数输入了一串字符ABCD,然后把这串字符给到ch,然后紧接着我打印这个ch,然后我得

  • 关于C语言中E-R图的详解

    E-R  英文缩写为(Entity Relationship Diagram)也称实体-联系图. 提供了表示实体类型.属性和联系的方法,用来描述现实世界的概念模型. 下面就讲详解e-r图,如下: 从上面的的图可以看到一个完整的e-r图有四个部分: 1.矩形框,矩形表示实体型,矩形框内写明实体名: 2.椭圆框,椭圆表示实体的属性,并用无向边将其与相应的实体型连接起来: 3.菱形框,菱形表示实体型之间的联系,在菱形框内写明联系名, 4.联系线,实体与属性之间:实体与联系之间:联系与属性之间用直线相连

  • R语言中devtools的使用详解

    今天安装r语言devtools包,尝试很多种方法也不能决解,下面这个问题是改变镜像,然后就会可以安装了(3.4.2版本) Warning in install.packages : InternetOpenUrl failed: '无法解析服务器的名称或地址' Warning in install.packages : InternetOpenUrl failed: '不能连接到吊销服务器,或者未能获得最终响应.' Warning in install.packages : InternetOp

  • C语言中的malloc使用详解

    一.原型:extern void *malloc(unsigned int num_bytes); 头文件:#include <malloc.h> 或 #include <alloc.h> (注意:alloc.h 与 malloc.h 的内容是完全一致的.) 功能:分配长度为num_bytes字节的内存块 说明:如果分配成功则返回指向被分配内存的指针,否则返回空指针NULL. 当内存不再使用时,应使用free()函数将内存块释放. 举例: #include<stdio.h&g

  • C语言中的const和free用法详解

    注意:C语言中的const和C++中的const是有区别的,而且在使用VS编译测试的时候.如果是C的话,请一定要建立一个后缀为C的文件,不要是CPP的文件.因为,两个编译器会有差别的. 一.C语言中的const比较常见的用法,const做常量 #include<stdio.h> #include<malloc.h> #include<string.h> /* C中的const用法(使用VS测试的时候,要注意建立一个C后缀的文件,因为C的编译器和C++的编译器还是有区别的

  • C语言中memcpy 函数的用法详解

    C语言中memcpy 函数的用法详解 memcpy(内存拷贝函数) c和c++使用的内存拷贝函数,memcpy函数的功能是从源src所指的内存地址的起始位置开始拷贝n个字节到目标dest所指的内存地址的起始位置中. void* memcpy(void* destination, const void* source, size_t num); void* dest 目标内存 const void* src 源内存 size_t num 字节个数 库中实现的memcpy函数 struct { ch

  • C语言中static和auto用法详解

    目录 static的第一种用法:定义为静态变量 static的第二种用法:有理说不清,直接代码见真知 auto的用法:直接代码见真知 总结 static的第一种用法:定义为静态变量 何为静态变量?存储在静态数据区的变量会在程序刚开始运行时就完成初始化,也是唯一的一次初始化.就是只进行一次初始化.不理解?看代码! 代码见真知: #include<stdio.h> int main() { void fun(); //定义一个空函数 for(int i=0;i<3;i++) { fun();

  • C语言中typedef的用法以及#define区别详解

    目录 1.简洁定义 2.为已有类型起别名 为字符数组起别名 为指针起别名 3.typedef 和 #define 的区别 总结 1.简洁定义 C语言允许为一个数据类型起一个新的别名,就像给人起"绰号"一样.而编程中起别名,是为了编程人员编程方便,例如: 定义如下结构体 struct stu { int ID; char name[20]; float score[3]; char *data; }; 要想定义一个结构体变量就得这样写: struct stu Marry://Marry是

随机推荐

其他