continue、break和return语句
continue、break和return语句作者:lyb661
/////////////////////
请看以下例子,
//sum.cpp
#include<iostream>
int sum(int n)
{
int sumv=0;
for(int i=1;;i++)
{
if(i%2==0)
continue;
if(i>=n)
break;
sumv+=i;
}
return sumv;
}
int main()
{
using namespace std;
int m;
cout<<"enter a number: ";
cin>>m;
cout<<sum(m)<<endl;
return 0;
}
/////////////////////////////
程序说明:
函数int sum(int n)输出一定范围内连续奇数的和。
for循环中整型i初始化为最小正整数1,每次循环后i值自增1;
continue语句检查i是否为偶数,如遇偶数则不做处理,返回for循环头部开始新一轮循环。
break语句则给出for循环终止的条件;
sumv+=i;将符合条件的奇数累加至sumv。
直至i值达到上限,break跳出循环。
return语句返回所有奇数的和给主调函数,至此int sum(int n)函数正式结束。程序控制权回到main()函数。
main()函数打印sum(m)后至return 0;正常结束。
程序很好地说明了continue、break和return语句的用法。
continue和break语句一般用于循环体内;return语句则用于函数中,表示函数正式结束。
continue和break语句都用于循环中。continue语句对一定限制条件的数据不做处理,而返回循环首部,开始新一次循环。break语句则直接结束循环。转而执行循环体外最近的语句。
break语句也用于switch多分支结构中,结束一个case标号。
二者都有跳转的作用,不同的是:continue跳到循环头部,break则跳到循外部。前者开始新的循环,后者结束循环。前者像是一个数据过滤器,后者则是循环的终结者。
return语句一般用于函数中,表示函数执行的结果。无论有返回值的函数还是无返回值的函数(void函数),执行至return处将直接结束,并把充控制权交还给主调函数。return语句后面的代码将被忽略。
当然,有时return语句处在分支语句中,表示一种可选的执行结果。例如绝对值函数:
///////////////////////////
int abs(int n)
{
if(n<0)
return -n;
else
return n;
}
//////////////////////////
补充说明:本例程序用于解释三个常用语句的作用,实际上,求连续奇数的和代码可简化为:
//////////////////////////
int sum(int n)
{
int sumv=0;
for(int i=1;i<=n;i+=2)
sumv+=i;
return sumv;
}
////////////////////////////////////
[此贴子已经被作者于2019-4-18 08:33编辑过]