C12-蜗牛爬树
原题链接:49776.蒟蒻队笔记汇总2025-08-20 12:21:57
发布于:江苏
一、课堂案例
理解T组测试样例
#include<iostream>
using namespace std;
int main()
{
int T;
cin >> T;
while (T--) { //执行T次
int h, i = 1, sum = 0;
cin >> h;
while (1) {
sum += 10;
if (sum >= h) {
cout << i << endl;
break;
}
sum -= 5;
i++;
}
}
return 0;
}
二、 while 与 do while()
while是先判断再做
do while是先做再判断,保证循环体至少执行一次。
#include<iostream>
using namespace std;
int main(){
int i = 1;
// while (i>5){
// cout << "666" << endl;
// i++;
// }
do {
cout << "666" << endl;
i++;
}while (i>5);
return 0;
}
三、随堂练习
1. 输出1~n的偶数
#include<iostream>
using namespace std;
int main()
{
int n;
cin >> n;
int i = 2;
while (i <= n) {
cout << i << ' ';
i+=2;
}
return 0;
}
2. 计算1~n的和
#include<iostream>
using namespace std;
int main(){
int n;
cin>>n;
int i=1;
long long sum=0;
while(i<=n){
sum += i;
i++;
}
cout<<sum;
return 0;
}
3. 角谷定理
#include<iostream>
using namespace std;
int main()
{
int n;
cin >> n;
while (n != 1) {
if (n%2==1) {
printf("%d*3+1=%d\n", n, n*3+1);
n = n*3+1;
} else {
printf("%d/2=%d\n", n, n/2);
n /= 2;
}
}
cout << "End";
return 0;
}
四、作业提示
阶乘:
可以类比循环求和的代码,将加号换成乘号,注意数据类型long long
这里空空如也
有帮助,赞一个