题目描述
输入n个成绩,换行输出n个成绩中最高分数和最低分数的差。
输入描述:
两行,第一行为n,表示n个成绩,不会大于10000。
第二行为n个成绩(整数表示,范围0~100),以空格隔开。
输出描述:
一行,输出n个成绩中最高分数和最低分数的差。
解题思路
利用一个一维数组存储输入的n个数字,然后通过对比找到最大最小值,输出他们之差。
代码
#include<iostream>
using namespace std;
int main()
{
int n;
cin>>n;
int a[n+1];//放置索引越界,将数组定义的大一些
int max=0,min=100;//先定义最小和最大,后面通过比较不断改变最小值和最大值
for(int i=0;i<n;++i)
{
cin>>a[i];
if(max<a[i])
max=a[i];//存在元素比max大,则max等于它
if(min>a[i])
min=a[i];//存在元素比min小,则min等于它
}
cout<<max-min<<endl;//遍历完整个数组就得到了最大值和最小值。输出他们的差值
return 0;
}
京公网安备 11010502036488号