C语言程序设计用循环语句输入十个数,去掉最大值和一个最小值,求平均值
5个回答
展开全部
#include <stdio.h>
float Average(float a[]);
int main(void)
{
float a[10];
for(int i = 0;i < 10;i++)
{
printf("输入第%d个数:\n",i+1);
scanf("%f",&a[i]);
}
printf("去掉最大最小值后的平均值为: %.2f\n",Average(a));
return 0;
}
float Average(float a[])
{
float sum = 0.0,max = a[0],min = a[0];
for(int x = 0;x <= 9;x++)
{
if(a[x] > max) max = a[x];
if(a[x] < min) min = a[x];
sum += a[x];
}
return (sum-max-min)/8;
}
祝:学业有成.
float Average(float a[]);
int main(void)
{
float a[10];
for(int i = 0;i < 10;i++)
{
printf("输入第%d个数:\n",i+1);
scanf("%f",&a[i]);
}
printf("去掉最大最小值后的平均值为: %.2f\n",Average(a));
return 0;
}
float Average(float a[])
{
float sum = 0.0,max = a[0],min = a[0];
for(int x = 0;x <= 9;x++)
{
if(a[x] > max) max = a[x];
if(a[x] < min) min = a[x];
sum += a[x];
}
return (sum-max-min)/8;
}
祝:学业有成.
展开全部
题目不太严谨!!!或者就是陷阱!!
“去掉最大值和一个最小值”,最大值的前面为什么没有加入“一个”,如果是两个或以上的数相同并且最大,是去掉一个还是都去掉?这是个问题。
当然,这也许有些吹毛求疵,呵呵。
“去掉最大值和一个最小值”,最大值的前面为什么没有加入“一个”,如果是两个或以上的数相同并且最大,是去掉一个还是都去掉?这是个问题。
当然,这也许有些吹毛求疵,呵呵。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
void main(){
float num[10],max,min,ave=0;
int i;
printf("请输入十个数:");
for(i=0;i<10;i++)
scanf("%f",&num[i]);
max=num[0];
min=num[1];
for(i=0;i<10;i++){
if(num[i]>max)
max=num[i];
if(num[i]<min)
min=num[i];
ave+=num[i];
}
ave=(ave-min-max)/8;
printf("去掉一个最大值和最小值的平均值为:%f",ave);
}
已经运行过,No Problem!
void main(){
float num[10],max,min,ave=0;
int i;
printf("请输入十个数:");
for(i=0;i<10;i++)
scanf("%f",&num[i]);
max=num[0];
min=num[1];
for(i=0;i<10;i++){
if(num[i]>max)
max=num[i];
if(num[i]<min)
min=num[i];
ave+=num[i];
}
ave=(ave-min-max)/8;
printf("去掉一个最大值和最小值的平均值为:%f",ave);
}
已经运行过,No Problem!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
void main()
{
int a[10];
int i, max=0, min=0;
float sum=0, avg=0;
for(i=0;i<10;i++)
scanf("%d",&a[i]);
max=a[0];
min=a[0];
for(i=0;i<10;i++)
{if(a[i]>=max) max=a[i];
else min=a[i];}
for(i=0;i<10;i++)
sum+=a[i];
sum=sum-max-min;
avg=sum/8;
printf("%d,%d,%f,%f",max,min,sum,avg);
}
void main()
{
int a[10];
int i, max=0, min=0;
float sum=0, avg=0;
for(i=0;i<10;i++)
scanf("%d",&a[i]);
max=a[0];
min=a[0];
for(i=0;i<10;i++)
{if(a[i]>=max) max=a[i];
else min=a[i];}
for(i=0;i<10;i++)
sum+=a[i];
sum=sum-max-min;
avg=sum/8;
printf("%d,%d,%f,%f",max,min,sum,avg);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是不是作业呀?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询