OpenJudge1.5.6:整数序列的元素最大跨度值

描述

给定一个长度为n的非负整数序列,请计算序列的最大跨度值(最大跨度值 = 最大值减去最小值)。 

输入一共2行,第一行为序列的个数n(1 <= n <= 1000),第二行为序列的n个不超过1000的非负整数,整数之间以一个空格分隔。输出输出一行,表示序列的最大跨度值。

错误答案及解析:

#include<stdio.h>
int main()
{
	int i,n,a=0,max=0,min=0,b;       //此处应将min的初始值设为极值1000,以确保min最终取值为输入值中最小;
	scanf("%d",&n);
	for(i=1;i<=n;i++)
	{
		scanf("%d",&a);
		if(a>=max)
		{
			max=a;
		}
		if(a<=min)
		{
			min=a;
		}
	}
	b=max-min;
	printf("%d",b);
	return 0;
}
正解:
#include<stdio.h>
int main()
{
	int i,n,a=0,max=0,min=1000,b;       
	scanf("%d",&n);
	for(i=1;i<=n;i++)
	{
		scanf("%d",&a);
		if(a>=max)
		{
			max=a;
		}
		if(a<=min)
		{
			min=a;
		}
	}
	b=max-min;
	printf("%d",b);
	return 0;
}


原文地址:https://www.cnblogs.com/ziyuan122625/p/11773018.html