题目描述
给出 n n n 和 n n n 个整数 a i a_i ai,求这 n n n 个整数中的极差是什么。极差的意思是一组数中的最大值减去最小值的差。
输入格式
第一行输入一个正整数 n n n,表示整数个数。
第二行输入 n n n 个整数 a 1 , a 2 … a n a_1,a_2 \dots a_n a1,a2…an,以空格隔开。
输出格式
输出一个整数,表示这 n n n 个整数的极差。
1.题目分析
将整数存入数组,直接升序排序后,打印最大索引减最小索引的值即可。
排序的方式有很多,这里用最简单的冒泡排序。
2.题目思路
写一个冒泡排序的函数,键入数据到数组后,直接调用,打印,完。
当然不写函数也是可以的,函数的目的是只是为了提高代码的复用性。
3.代码实现
#include <stdio.h>//冒泡排序
void BubbleSort(int *p, int len) {int temp;for (int i = 0; i < len - 1; ++i) {for (int j = 0; j < len - i - 1; ++j) {if (p[j] > p[j + 1]) {temp = p[j];p[j] = p[j + 1];p[j + 1] = temp;}}}
}int main() {int n, a;int arr[100];scanf("%d", &n);//键入数据for (int i = 0; i < n; ++i) {scanf("%d", &a);arr[i] = a;}//排序BubbleSort(arr, n);//最大减最小printf("%d", arr[n - 1] - arr[0]);return 0;
}