NOI(1.9编程基础之顺序查找-05:最大值和最小值的差)
今天,我要给大家发一篇关于NOI上1.9顺序查找的博客,关于一个数组中最大值与最小值的差。
先看看题目
- 05:最大值和最小值的差
描述
输出一个整数序列中最大的数和最小的数的差。
输入
第一行为M,表示整数个数,整数个数不会大于10000;
第二行为M个整数,以空格隔开,每个整数的绝对值不会大于10000。
输出
输出M个数中最大值和最小值的差。
样例输入
5
2 5 7 4 2
样例输出
5
这道题,主要就是运用#include< climits> 这个头文件,来比较大小;
首先,定义两个函数:max,min,分别是最大值与最小值的英文;
接着,再定义两个函数的量,max=INT_MIN,min=INT_MAX;
注意,这个量必须是大写,并且与原函数相反,因为现需要将它定义为最小(或最大)才能进行比较;
然后,判断max,min与数组的大小,并进行替换;
最后输出最大值与最小值的差为max-min;
代码如下:
#include<cstdio>
#include<climits>
int main()
{
int a[10005],b,i,max=INT_MIN,min=INT_MAX;
scanf("%d",&b);
for(i=1;i<=b;i++)
{
scanf("%d",&a[i]);
if(max<a[i]) max=a[i];
if(min>a[i]) min=a[i];
}
printf("%d",max-min);
}
ps:INT_MAX为int 最大值,INT_MIN为int 最小值