跳转语句 break;continue; return; goto 区别用法

C语言是按顺序执行语句的语言——一个接一个。即使它有条件语句或循环语句,程序的流程也是自上而下的。没有顺序流的随机跳转或跳转。但我们的程序是为了满足任何现实世界的需求,一个接一个地执行永远不会很直接。在某些情况下,我们必须偏离代码的正常顺序流,必须跳转到下一个语句集执行。这可以通过使用break、continue和goto语句来实现。

Break语句用于在没有任何条件的情况下停止代码的正常执行,它将跳出当前执行循环。我们可以使用条件来检查是否必须中断,但这些条件不是break语句的一部分。我们可以用if语句。例如:

#include<stdio.h>
int main(){

int num=1;
while(1){

printf("%d",num++);
if(16==num){
break;
}
}
return 0;
}

当我们执行循环时,为了输出前15个自然数,我们必须给一个判断 跳出这个死循环,当if num ==16;成立时,break;直接跳出这个while循环

同样的的方法   break也来中断for  或do  while   循环

这个break语句也用于switch语句。由于switch语句在执行匹配的case语句之后不会中断执行,所以我们必须显式地使它中断。通过break执行。

continue类似于break语句,但是它不会跳出循环,而是停止执行当前迭代的循环体内部的set指令,并跳转到下一个迭代的循环体。

例如

#include<stdio.h>
int main(){

for (int num=1;num<5;num++){

if(3==num){
continue;
}
printf("%d\n",num);
}
return 0;
}

当执行的if语句为true时,continue执行到for循环的表达式3  num++  跳过了打印3的语句  执行下一次循环

在例如

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

这个只打印一个0;当i=1;执行continue跳转到表达式3 ,此时表达式为true  程序一直执行,但只打印一个0;

同样  continue 用在while ;do  while;中

Continue语句来中断当前执行并继续下一组迭代

goto  语句

该语句是无条件跳转语句。它可以在程序的任何地方使用,以便从当前执行跳转到代码中的其他行。一旦跳转到其他行,它将继续从那里依次执行代码。它不能返回到以前的执行行。为了表示它必须跳转的那条线,我们给这条线标上标签。goto语句的一般语法为:

goto   标号;

跳转标签可以在代码中的任何位置。要么在goto语句之前,要么在goto语句之后。标签存在于何处并不重要。

这种跳跃是无条件的。通常我们使用goto语句来处理错误。但这将降低代码的可读性,并给查看代码的人带来困惑。因此,始终建议在代码中减少goto语句的使用。并且会使程序执行起来相当混乱,cpu 需要不停的进行跳转,效率较低,因此在开发的程序的时候慎用。

return

这个跳转语句通常用于函数的末尾,以结束或终止带有或不带值的语句。它将控制从调用函数返回到主函数(主函数本身也可以有一个返回)。

需要考虑的重要一点是,return只能用于使用返回类型声明的函数,如int、float、double、char等。使用void类型声明的函数不返回任何值。此外,函数返回与声明的数据类型相同的值。下面是一个简单的例子,展示return语句是如何工作的。

#include <stdio.h>
char func(int ascii)
{
    return ((char)ascii);
}
int main()
{
    int ascii;
    char ch;
    printf("Enter any ascii value in decimal: \n");
    scanf("%d",&ascii);
    ch=func(ascii);
    printf("The character is : %c\n",ch);
    return 0;
}

在这个程序中,我们有两个具有返回类型的函数,但是只有一个函数返回值[func()],而另一个函数只是用来终止函数[main()]。函数func()返回给定数字的字符值(这里是65)。我们还看到func()的返回类型为char,因为它返回一个字符值。
函数的返回值为零,因为main的返回类型为int,所以这里必须有一个返回值。

原文地址:https://www.cnblogs.com/lc-bk/p/11072733.html

时间: 2024-08-24 19:02:58

跳转语句 break;continue; return; goto 区别用法的相关文章

C#中break,continue,return,,goto,throw的区别(转--未整理完)

break 语句用于终止最近的封闭循环或它所在的switch 语句. 控制传递给终止语句后面的语句(如果有的话). /// <summary> /// break 示例 /// 在此例中,条件语句包含一个应该从 1 计数到 100 的计数器 /// 但 break 语句在计数达到 4 后终止循环. /// </summary> static void Main() { for (int i = 1; i <= 100; i++) { if (i == 5) { break;

流程控制之 break ,continue,return的区别

首先文字描述一下区别: break 为终止当前循环.跳出当前循环,但是后面的语句(即当前方法中当前循环之外后面的语句)还是会执行. continue 为停止本次循环,继续执行后面的循环.当然后面的语句还是会执行 return  为终止当前循环(跟break很像),跳出当前方法. 看概念是不是不容易明白,下面直接撸代码.简单明了 public class Test { public static void main(String[] args) { for(int i=1;i<4;i++){ Sy

Java中 break continue return 的区别

1.break break :跳出当前循环:但是如果是嵌套循环,则只能跳出当前的这一层循环,只有逐层break才能跳出所有循环: for (int i = 0; i < 10; i++) { if (i == 6) { break; // 在执行i==6时强制终止循环,i==6不会被执行 } System.out.println(i); } 输出结果为0 1 2 3 4 5 :6以后的都不会输出 2.continue continue:终止当前循环,但是不跳出循环(在循环中continue后面的

break continue return 的区别

1. break 直接结束一个循环,跳出循环体,不再执行循环体中代码, 循环体外面的会执行. 2.continue t终止当前循环,继续下一个循环, continue 后面的语句在当前循环中不会执行, 下次循环继续执行, 循环体外面的也会执行 3.return  return 的功能是结束一个方法, 在循环体中执行return 将会结束该方法,循环自然也就结束,不管这个 return 嵌套的多深 原文地址:https://www.cnblogs.com/buxiugangzi/p/1207618

break,continue,return的区别

1)break 作用:跳过当前一个循环体 eg1: <pre name="code" class="php"><pre name="code" class="php" style="font-size: 12px;"><?php <span style="color:#330033;">for</span>($a=1;$a<10

while循环中,break,continue,return的区别

break 结束循环,跳出循环体: continue 结束本次循环,进行下次循环: return 跳出循环体所在的方法,相当于跳出循环体. 版权声明:本文为博主原创文章,未经博主允许不得转载.

C# break continue return 的区别

static void Main(string[] args) { Console.WriteLine("使用break退出循环"); for(int i = 0; i < 5; i++) { if (i == 2) { break; } Console.WriteLine(i); } Console.WriteLine("使用continue退出循环"); for (int i = 0; i < 5; i++) { if (i == 2) { cont

04-01 Java switch、for、while、do while语句,循环嵌套,跳转语句break、continue、return

语句 1:switch语句(掌握) (1)格式: switch(表达式) { case 值1: 语句体1; break; case 值2: 语句体2; break; ... default: 语句体n+1; break; } 格式解释说明: switch:说明这是switch语句. 表达式:可以是byte,short,int,char JDK5以后可以是枚举 JDK7以后可以是字符串 case:后面的值就是要和表达式进行比较的值 break:表示程序到这里中断,跳出switch语句 defaul

js中退出语句break,continue和return 比较(转)

原链接:http://blog.163.com/ued_er/blog/static/199703159201210283107315/ js中退出语句break,continue和return 比较 在 break,continue和return 三个关键字中, break,continue是一起的,return 是函数返回语句,但是返回的同时也将函数停止 首先:break和continue两个一起讨论 这两个应用的范围是退出循环或者switch语句,在其他地方使用会导致错误: break:由