三.for语句和while语句
1.找最小值
①题目描述
给出 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<bits/stdc++.h>
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<<a[1];
return 0;
}
普通简单的方法如下
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
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<<ans;
return 0;
}
这行代码不许要解释吧,看不懂见上一篇文章C++保姆级入门教程(6)—— 分支结构_iecne的博客-CSDN博客
四.多重循环
1. [NOIP2013 普及组]计数问题 (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<iostream>
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<<ans<<endl;
return 0;
}
③题目解析
这就是一个基础的拆分数字,从1-x重复的循环,判断每一个数
如是1,1%10……1,%10就是提取个位数,每一次循环再除以10,就可以提取到每一位数的数字,再用if判断是否n
(请各位大佬看下此代码是否有问题,这个代码提交到CSDN第二期竞赛中不给分!!!强烈怀疑评分系统的问题)
五.循环结构程序设计案例
1.数列求和
①题目描述
计算 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<iostream>
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<<a;//输出
return 0;
}
③和高斯一样聪明参考答案
不守规矩是好孩子
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
mg-La3dunPY-1714718618202)]
[外链图片转存中…(img-1Xvb8rmy-1714718618202)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新