- zouyc 的博客
循环练习题
- @ 2025-6-13 11:28:05
循环练习题
针对循环结构,选择典型练习题讲解。
- 奥运奖牌 (T1064)
- 重要的话说 n 遍(P3933)
- 奇数求和(P3935)
- 26个兄弟姐妹1(P3934)
- 老狼老狼(P2936)
- 打老虎(P3942)
- 26个兄弟姐妹2(P3940)
1. 奥运奖牌 (T1064)
//解法一:普通变量+循环
#include<iostream>
using namespace std;
int main() {
int n;
cin>>n;
int sa=0,sb=0,sc=0;
for (int i=1;i<=n;i++)
{
int a,b,c;
cin>>a>>b>>c;
sa+=a;
sb+=b;
sc+=c;
}
cout<<sa<<" "<<sb<<" "<<sc<<" "<<(sa+sb+sc);
return 0;
}
//解法2:数组+循环
#include<iostream> //用数组
using namespace std;
int main() {
int n;
cin>>n;
int s[3]={0,0,0}; //记录统计数,或者全局变量
for (int i=1;i<=n;i++)
{
int a,b,c;
cin>>a>>b>>c;
s[0]+=a; //记录金牌
s[1]+=b; //统计银牌
s[2]+=c; //统计铜牌
}
cout<<s[0]<<" "<<s[1]<<" "<<s[2]<<" "<<(s[0]+s[1]+s[2]);
return 0;
}
2. 重要的话说 n 遍(P3933)
#include<iostream>
using namespace std;
int main() {
int n;
cin>>n;
for (int i=1;i<=n;i++)
{
cout<<"I'm gonna WIN!"<<endl;
}
return 0;
}
3. 奇数求和(P3935)
#include <iostream>
using namespace std;
int main()
{
int m,n;
cin>>m>>n;
if (m%2==0) m++; //奇数
if (n%2==0) n--; //jishu
int sum=0;
for (int i=m;i<=n;i+=2)
{
sum+=i;
}
cout<<sum;
return 0;
}
4. 26个兄弟姐妹1(P3934)
//char也可+ - * /
#include<iostream>
using namespace std;
int main() {
for (char x='a';x<='z';x++)
{
cout<<x<<" ";
}
return 0;
}
5. 老狼老狼(P2936)
#include<iostream>
using namespace std;
int main() {
int i;
for (int i=1;i<=12;i++)
{
cout<<"老狼老狼几点钟?"<<i<<"点钟。"<<endl;
}
cout<<"狼来了,快跑!";
return 0;
}
6. 打老虎(P3942)
/*
打老虎 while
*/
#include<iostream>
using namespace std;
int main() {
int i=1;
while (i<=5)
{
cout<<i;
cout<<"\n";
i++;
}
return 0;
}
7. 26个兄弟姐妹2(P3940)
#include<iostream>
using namespace std;
int main() {
for (char i='a';i<='z';i++) {
cout<<i<<' ';
}
cout<<endl;
for (char i='Z';i>='A';i--) {
cout<<i<<' ';
}
return 0;
}