哈喽大家好,我是iecne,本期为大家带来的是CPP/C++保姆级入门教程的第⑦期—— 循环结构,包教包会,快来看看吧!
此教程适合新手小白,因为语言会十分的通俗易懂,不会有很多的专业词汇出现,可以更好的掌握并且吸收,后续加上持之以恒的练习题目将会基本巩固
目录
一.循环结构是什么
二.循环结构的用法
三.for语句和while语句
1.找最小值
①题目描述
②参考答案
四.多重循环
1. [NOIP2013 普及组]计数问题 (CSDN第二期竞赛第一题)
①题目描述
②参考答案
③题目解析
五.循环结构程序设计案例
1.数列求和
①题目描述
②没高斯聪明参考答案
③和高斯一样聪明参考答案
六.总结
系列文章目录
虽然计算机可以在短时间批量处理成千上万条指令,但是不少问题中有许多规律性的重复操作,比如说计算几百个学生的平均分,或者对上万人的名单进行排序。仅使用顺序或者分支结构,对每一步操作都写出对应的语句是不可能的;但可以使用循环语句让计算机反复执行类似的任务。
本章将会介绍循环结构程序设计,同时前面的内容也会进一步的巩固。学完这一章,读者可以初步感受到计算机高效解决问题的能力。
循序结构具体怎么做,新手小白们若没有看过
C++保姆级入门教程(4) 循环
可以点击链接学习学习
给出 nn 和 nn 个整数 a_iai,求这 nn 个整数中最小值是什么。
输入格式
第一行输入一个正整数 nn,表示数字个数。
第二行输入 nn 个非负整数,表示 a_1,a_2 \dots a_na1,a2…an,以空格隔开。
输出格式
输出一个非负整数,表示这 nn 个非负整数中的最小值。
输入输出样例
输入 #
8 1 9 2 6 0 8 1 7
输出 #1
0
说明/提示
数据保证,n\le100n≤100 且 0\le a_i \le 10000≤ai≤1000。
这个用到了数组和sort函数的AC code
#include
using namespace std;
int n,a[10001];
int main()
{
cin>>n;
for(int i=1;i<=n;i++) cin>>a[i];
sort(a+1,a+n+1);
cout<
普通简单的方法如下
#include
#include
#include
#include
using namespace std;
int n,in,ans=1e9;//ans大点后面min更好比较,否则答案会变成0
int main()
{
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>in;
ans=min(ans,in);
}
cout<
这行代码不许要解释吧,看不懂见上一篇文章C++保姆级入门教程(6)—— 分支结构_iecne的博客-CSDN博客
试计算在区间 11 到 nn 的所有整数中,数字 xx(0\le x\le90≤x≤9)共出现了多少次?例如,在 11 到 1111 中,即在 1,2,3,4,5,6,7,8,9,10,111,2,3,4,5,6,7,8,9,10,11 中,数字 11 出现了 44 次。
输入格式
22 个整数 n,xn,x,之间用一个空格隔开。
输出格式
11 个整数,表示 xx 出现的次数。
输入输出样例
输入#1
11 1
输出 #1
4
说明/提示
对于 100\%100% 的数据,1\le n\le 10^61≤n≤106,0\le x \le 90≤x≤9。
#include
using namespace std;
int x,ans,n,i,q;
int main()
{
cin>>x>>n;
for(i=1;i<=x;i++)
{
q=i;
while(q>0)
{
if(q%10==n)++ans;
q/=10;
}
}
cout<
这就是一个基础的拆分数字,从1-x重复的循环,判断每一个数
如是1,1%10……1,%10就是提取个位数,每一次循环再除以10,就可以提取到每一位数的数字,再用if判断是否n
(请各位大佬看下此代码是否有问题,这个代码提交到CSDN第二期竞赛中不给分!!!强烈怀疑评分系统的问题)
计算 1+2+3+\cdots+(n-1)+n1+2+3+⋯+(n−1)+n 的值,其中正整数 nn 不大于 100。由于你没有高斯聪明,所以你不被允许使用等差数列求和公式直接求出答案。
输入格式
输入一个正整数 nn。
输出格式
输出一个正整数,表示最后求和的答案。
输入输出样例
输入 #1
100
输出 #1
5050
说明/提示
数据保证,1 \leq n \leq 1001≤n≤100。
我真的无语。。。那么就规规矩矩地用for循环吧
话不多说,上代码
#include
using namespace std;
int main()
{
int a=0,n; //定义,a初始化为0,
cin>>n; //输入
for(int i=1;i<=n;i++)//循环,从1到n
{
a+=i; //累加求和
}
cout<
不守规矩是好孩子
等差数列上代码
#include
using namespace std;
int a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,sum;
int main()
{
cin>>n;
cout<<(n+1)*n/2;
return 0;
}
本节课主要是讲解三道循序结构的题目,至此循环结构(for / while)思想博主已经分享完了,相信大家对这个逻辑有了一定的理解,大家可以自己动手敲敲代码,感受一下
包教包会,帅的人已然点赞收藏关注,而丑的人还在犹豫,被犹豫了,快三连吧!
本期收录于博主的专栏——C++保姆级入门教程,适用于编程入门初学者,感兴趣的朋友们可以订阅,查看其它专栏。
C++保姆级入门教程_iecne的博客-CSDN博客
C++保姆级入门教程(1) 变量 输出 输入
C++保姆级入门教程(2) 算术运算和赋值
C++保姆级入门教程(3) if语句
C++保姆级入门教程(4) 循环
C++保姆级入门教程(5) 顺序结构
C++保姆级入门教程(6) 分支结构
C++保姆级入门教程(7) 循环结构
感谢每一个观看本篇文章的朋友,更多精彩敬请期待:iecne的博客_CSDN博客-C++保姆级入门教程领域博主
文章存在借鉴,如有侵权请联系修改删除!