跳转语句——break、continue、goto
2013-03-28 10:35 Keiven_LY 阅读(278) 评论(0) 编辑 收藏 举报1、break语句
说明:该语句将使程序从当前的循环语句(do……while,while,for)内跳转出来,继续执行循环语句后面的语句
例:从键盘读入用户输入的数,对其求和,直到当用户输入数0时,表示输入结束
#include <iostream> #include<stdlib.h> using namespace std; void main() { int sum=0,n; cout<<"请输入一个整数(输入0时表示结束)"<<endl; while(1) //永远循环 { cin>>n; if(n==0) break; sum=sum+n; } cout<<"输入的整数之和为:"<<sum<<endl; system("pause"); }
2、continue语句
说明:该语句不是结束循环,而是结束循环语句的当前一次循环,接着执行下一次循环
例:对用户输入的所有正数求和,如果输入的数为负数,则忽略该数。要求每输入一个数,要判断其是正数还是负数,如果是负数,则利于continue语句结束当前一次循环,继续下一次循环吗,否则将该数嫁到总和上
#include <iostream> #include<stdlib.h> using namespace std; void main() { int sum=0,n; cout<<"请输入一个整数(输入0时表示结束)"<<endl; while(n!=0) { cin>>n; if(n<0) continue; sum=sum+n; } cout<<"输入的整数之和为:"<<sum<<endl; system("pause"); }
3、goto语句
说明:该语句无条件转移程序的执行控制,它总是与一标号相匹配
例:求满足条件12+22+32+....+n2≤1000的最大的n
#include <iostream> #include<stdlib.h> using namespace std; void main() { int sum=0,n=0; while(1) { sum=sum+n*n; if(sum>=1000) goto end; n++; } end:cout<<"最大的n为:"<<n-1<<endl; system("pause"); }