一、循环
循环顾名思义是用来完成一些不断循环的一件事情;所以看例题:
计算输出1+2+3+...+n1+2+3+...+𝑛的和。
像此类题目,一般人是这样的
#include<bits/stdc++.h>
using namespace std;
int n;
int main(){
cin>>n;
cout<<1*2*3*4*````;
return 0;
}
BUT,这样只会是徒劳,应为我们无法知道n的值;
但用循环就好了(如下):
for(int i=1;i<=n;i++){ 注:()中加条件;
//TODO;
}
while(条件){
//TODO;
}
do{
//TODO;
}while()
现在再看题就好多了(AC代码):
解:1.
#include<bits/stdc++.h>
using namespace std;
int n,sum=1;
int main(){
cin>>n;
for(int i=1;i<=n;i++){
sum*=i;
}
cout<<sum;
return 0;
}
2.
#include<bits/stdc++.h>
using namespace std;
int n,sum=1;
int main(){
cin>>n;
int tmp=n;
while(tmp--){
sum*=n;
n--;
}
cout<<sum;
return 0;
}
3.
#include<bits/stdc++.h>
using namespace std;
int n,sum=1;
int main(){
cin>>n;
int tmp=n;
do{
sum=sum*n;
n--;
tmp--;
}while(tmp);
cout<<sum;
return 0;
}
提高:
给定一个整数 𝑁N,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见样例 2)。
(下期见答案)
二、辨析:
1.while是先满足条件在循环;
2.do-while实现循环在满足条件;