游客 Signup | Login
中文 | En

1207 - C语言8.10

给定一个一维数组,包含10个学生的成绩,求出平均分、最高分和最低分。要求使用将数组传至函数进行操作的方法。

Input

只有一行,包含10个用空格隔开的实数,表示10个学生的成绩。保证所有成绩不小于0,不大于100。

Output

输出平均分、最高分和最低分,用空格隔开,小数点后保留2位小数。

请注意行尾输出换行。

Examples

Input

100 56 78 98.5 76 87 99 67.5 75 97

Output

83.40 100.00 56.00

Solution C

#include<stdio.h>
int main()
{
	int i;
	double max,min,sum,a[10];
	for(i=0;i<10;i++)
		scanf("%lf",&a[i]);
	max=min=a[0];
	for(sum=0,i=0;i<10;i++)
	{
		if(max<a[i])max=a[i];
		if(min>a[i])min=a[i];
		sum+=a[i];
	}
	printf("%.2lf %.2lf %.2lf\n",sum/10,max,min);
	return 0;
}

Solution C++

#include <stdio.h>
float max, min;
int main() {
	float average(float array[10]);
	float score[10], aver;
	int i;
	for (i = 0;i < 10;i++)
		scanf("%f", &score[i]);
	aver = average(score);
	printf("%.2f %.2f %.2f\n", aver, max, min);
	return 0;
}
float average(float array[10]) {
	int i;
	float aver, sum = array[0];
	max = min = array[0];
	for(i = 1;i < 10;i++) {
		sum = sum + array[i];
		if (array[i] > max)
			max = array[i];
		if (array[i] < min)
			min = array[i];
	}
	aver = sum / 10;
	return aver;
}

Time Limit 1 second
Memory Limit 32 MB
Discuss Stats
上一题 下一题