U1-8-循环综合练习
2025-10-06 12:30:33
发布于:江苏
9阅读
0回复
0点赞
一、上节课作业回顾
#include <iostream>
using namespace std;
int main()
{
int k, a, n;
cin >> k >> n;
while (n != 1) {
if (n % 2 == 1) {
n = n * 2 + 2;
} else {
n /= 2;
}
cout << n << "\n";
}
cout << "over";
return 0;
}
循环执行过程(流程图)
二、break与continue的区别
跳过 & 跳出
#include <bits/stdc++.h>
using namespace std;
int main(){
for (int i=0; i<10; i++){
// if (i == 4) break; //跳出当前循环
if (i == 4) continue; //跳过本次循环,后面的继续执行
cout << i << " ";
}
return 0;
}
三、打擂台找最值
#include <bits/stdc++.h>
using namespace std;
int main(){
int n, t;
cin >> n;
int maxx = 0; //打擂台找最大值,初始化为最小值
for (int i=1; i<=n; i++){
cin >> t;
if (t > maxx) maxx = t;
}
cout << maxx;
return 0;
}
四、练习
#include <bits/stdc++.h>
using namespace std;
int main(){
int n, k, cnt = 0 ;
cin >> k;
while (cin >> n){
if (n >= k){
break;
}
cnt++;
}
return 0;
}
/*
压岁钱
[压岁钱]
题目描述
“新年快乐,给你,这是你的压岁钱。
等你哪一年工作赚得钱至少有 k 元就不再给压岁钱了哦”……
这是家里一位长辈对你说的话,
假如你能预测未来每年的总收入,请问你还可以收到压岁钱几年?
提示
每个正整数不超过 10^9,且第二行一定存在一个数字会 ≥k。
输入格式
若干个正整数,第一行一个正整数 k。
第二行的每个正整数代表一年的工资。
输出格式
输出一个整数 a,表示还可以收到压岁钱 a 年。
样例组
输入#1
2000
2100 1800 1999
输出#1
0
输入#2
6000
输出#2
500 900 500 4090 3569 6666 1234
5
*/
五、作业提示
[奇顺偶逆]
题目描述
输入一个正整数 n,请将 1 ~ n 的数字按照奇偶交叉输出并且奇数顺序输出,偶数逆序输出。
【关键思路】
可以两两一组的分割输出的数字,每组数的和都是固定值n+1, 即输出两个数分别为 i 和 n+1-i, 步长每次是i+=2即可。
这里空空如也
有帮助,赞一个