c语言 利用排序程序求十个数中最大值和最小值的差

如题所述

#include<stdio.h>
void input(float a[],int n){//input函数:输入十个数据存放数组中
int i;
printf("please input group:");
for(i=0;i<n;i++){
scanf("%f",&a[i]);
}
}
void sort(float a[],int n){//排序,冒泡排序法将数组中的数进行排序
int i,j,temp;
for(i=1;i<n;i++)
for(j=0;j<n-i;j++)
{
if((a[j]-a[j+1])>0.0001)//浮点类型的数不能直接比较大小,因为精度问题,所以设置一个精度值
{
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}
}
int main(){
float max,mix;
float a[10];
input(a,10);//调用输入函数
sort(a,10);//调用排序函数
max=a[9];//最大值是数组中的最后一个数
mix=a[0];//最小值是数组中的第一个数
printf("max=%f,mix=%f\n",max,mix);
printf("max-mix=%f\n",max-mix);
return 0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-06-14
int[] a = new int[10];
int max = a[0];
int min = a[0];
for (int i = 0; i < a.Length;i++ )
{
if(a[i]<min){
min = a[i];
}
if (a[i] > max)
{
max = a[i];
}
}
int count = max - min;
第2个回答  2018-06-14
找出最大值和最小值 减就是了