lanqiao OJ 497

解法一:视频解析

#include<bits/stdc++.h> 
using namespace std;

typedef long long ll;
const int N=1e4+9;    //数组开大一点

int a[N];//定义一个数组

int main()
{
	int n;cin>>n;
	int i;
	
	for(i=0;i<n;i++)
	{
		cin>>a[i];
	}
	
	cout<<*max_element(a,a+n)<<"\n";		//“ * ”解引用符号 
	cout<<*min_element(a,a+n)<<"\n";        //*max_element(a,a+n);
	
	ll sum=0;//求和变量的初始化
	for(i=0;i<n;i++)
	{
		sum+=a[i];
	}
	
	cout<<fixed<<setprecision(2)<<1.0*sum/n<<"\n";
	
	return 0 ;
}

解法二:官方题解

#include<bits/stdc++.h>
using namespace std;

typedef long long ll;

const int N=1e4+9;
int a[N];

int main()
{
	ios::sync_with_stdio(0),cout.tie(0),cin.tie(0);
	
	int n;cin>>n;
	int i;
	ll sum=0;
	for(i=0;i<n;i++)
	{
		cin>>a[i];
		sum+=a[i];        //优点
	}
	cout<<*max_element(a,a+n)<<"\n";
	cout<<*min_element(a,a+n)<<"\n";
	cout<<fixed<<setprecision(2)<<1.0*sum/n<<"\n";
	
	return 0; 
} 
/*
在思路上和视频讲解一致,但是这个题解在输入数组的时候就已经将得到了
sum的值,不需要再进行for循环来获得。简洁美观
*/

 解法三:手动求值

#include<bits/stdc++.h>
using namespace std;

typedef long long ll;

const int N=1e4+9;
int a[N];

int main()
{
	ios::sync_with_stdio(0),cout.tie(0),cin.tie(0);
	
	int n;cin>>n;
	int i,sum=0;
	for(i=0;i<n;i++)
	{
		cin>>a[i];
		sum+=a[i];
	}
	
	int mx=mi=a[0];        //连续赋值,相同的变量类型且需要相同的值;
 
	
	for(i=0;i<n;i++)
	{
		mx=max(mx,a[i]);
		mi=min(mi,a[i]);
	}
	cout<<mx<<"\n";
	cout<<mi<<"\n"; 
	cout<<fixed<<setprecision(2)<<1.0*sum/n<<"\n";
	
	return 0; 
} 
/*
思路:
假设一个最大值然后不断的比较,判断当前读取的值与给定最值的关系。
只不过这里的判断函数用的是max
*/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值