1.for循环
后期使用频率最高的循环语句,代码框架如下:
for( 语句1 ; 语句2 ; 语句3 ){
语句4;
}
代码执行顺序:
语句1->语句2->语句4->语句3->语句2->语句4->语句3->语句2......
其中语句2是判断语句,如果是真,就执行语句4,语句3,如果为假,就结束循环。
1.1 模板代码1
// 输出1-n直接所有的数字
int n;
cin >> n;
for(int i=1;i<=n;i++){
cout << i << " ";
}
1.2 模板代码2
// 输出n-m直接所有的数字
int n,m;
cin >> n >> m;
for(int i=n;i<=m;i++){
cout << i << " ";
}
1.3 模板代码3
// 把某件事做n次,比如输入n个数字求和
int n,x,s=0;
cin >> n;
for(int i=1;i<=n;i++){
cin >> x;
s += x;
}
cout << s << endl;
2.while循环
while循环和for功能一样,只是书写格式不同,while循环一般用于知道循环结束条件,不知道循环次数的时候。
语句1;
while(语句2){
语句3;
语句4;
}
2.1模板代码1
// 死循环: 输入若干数字求和
int x,s=0;
while(cin >> x){
s+=x;
}
cout << s << endl;
//这种写法比赛也是可用的,如果用dev编写,输入若干数据后,按ctrl+z就可结束输入
2.2模板代码2
//输入若干数字求和,如果输入的是0,就结束
int x,s=0;
while(cin >> x){
if(x==0) break;
s+=x;
}
cout << s << endl;
// 如果知道结束条件,可以和break语句结合
2.3模板代码3
//把某一一件事情执行n次
int n;
cin >> n;
while(n--){
//循环体
}
2.4 模板代码4
// 拆位,计算一个数各个位数字之和
int n;
cin >> n;
while(n){
s+=n%10;
n/=10;
}
cout << s << endl;
3.do...while循环
do...while和while语句的主要区别是,do...while会先执行一次循环体,然后再进行判断。do...while后面使用并不多,大家了解即可。
do{
循环体;
}while(判断语句);
//无论条件是否成立,都会先执行一次循环体