代码改变世界

c++中的break,continue,goto语句

2019-09-15 16:38  myself914  阅读(1392)  评论(0编辑  收藏  举报

一、break语句
1、用法:
出现在switch语句或循环体中,使程序从循环体和switch语句内跳出,继续执行逻辑上的下一条语句,break语句不宜用在别处。
2、实例:

#include "stdafx.h"
#include<iostream>
using namespace std;
int main()
{
    int i, n;
    for (i = 1; i <= 3; i++)
    {
        cout << "请输入n:" << endl;
        cin >> n;
        if (n < 0)
        break;
        cout << "n=" << n << endl;
    }
    cout << "程序结束!" << endl;
    return 0;

}

3、运行结果

输入负数则程序会结束:
二、goto语句:
1、用法:
格式:goto 语句标号 在不需要任何条件的情况下直接使程序跳转到该语句标号所标识的语句去执行,语句标号应该放在语句的最前面,并用冒号:与语句分开
2、实例:


#include<iostream>
using namespace std;
int main()
{
    int i, n;
    for (i = 1; i <= 3; i++)
    {
        cout << "请输入n:" << endl;
        cin >> n;
        if (n < 0)
        goto end;
        cout << "n=" << n << endl;
    }
    end:cout << "程序结束!" << endl;
    return 0;
}

3运行结果:
当输入一个负数后,程序跳转到goto的语句标号end所标识的语句去执行,继而程序结束

braek与goto:
虽然都可以终止整个循环的执行,但二者有着本质区别:goto可以向任意方向跳转,可以控制流程跳转到程序中任意指定的语句位置;而break语句只限定流程跳转到循环语句之后的第一条语句去执行。 (goto语句的使用会破坏程序的结构,应该少用或不用,但是如果在一个多重循环的循环体中使执行流程跳出这个多重循环,用break语句难以直接做到,而goto语句则派上用场)
三、continue语句
1、用法:
当在循环体中遇到continue语句时,程序将跳过continue语句后面尚未执行的语句,开始下一次循环,即只结束本次循环的执行,并不终止整个循环的执行。
2、实例:

#include<iostream>
using namespace std;
int main()
{
    int i, n;
    for (i = 1; i <= 3; i++)
    {
        cout << "请输入n:" << endl;
        cin >> n;
        if (n < 0)
        continue;
        cout << "n=" << n << endl;
    }
    cout << "程序结束!" << endl;
    return 0;
}

3、运行结果:
当输入负数后,程序跳过该次循环continue后面的语句开始了下一次循环