亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

求5個數中最大數和最小數的平均值。

求5個數中最大數和最小數的平均值。

C
慕粉2149038396 2016-12-26 00:47:22
求5個數中最大數和最小數的平均值。
查看完整描述

4 回答

?
Yexiaomo

TA貢獻152條經驗 獲得超157個贊

#include?<stdio.h>
int?main()
{
	int?arr[5];
	int?i,?temp;
	int?min,?max;
	float?avg;?
	printf("請輸入五個數(默認為整數):");
	for(i?=?0;?i?<?5;?++i)
	{
		scanf("%d",?&arr[i]);
		if(?i?==?0)
		{
			min?=?arr[i];
			max?=?arr[i];
			continue;
		}
		if(?arr[i]?>?max)
		{
			temp?=?max;
			max?=?arr[i];
			arr[i]?=?temp;
			continue;
		}
		else?if(arr[i]?<?min)
		{
			temp?=?min;
			min?=?arr[i];
			arr[i]?=?temp;
		}
	}
	
	avg?=?(min+max)?/?2.0;?//整數和會自動向上轉型為浮點型,?或者寫成下面
	avg?=?(float)(min+max)?/?2;?//做一下類型轉換
	printf("5個數中最大數和最小數的平均值:?%.2f",?avg);?//結果保留兩位小數?

	return?0;
}


查看完整回答
1 反對 回復 2016-12-26
  • 望遠
    望遠
    這不是向上轉型的問題,是丟失精度的問題,當最大值最小值和為奇數時,會取整。
  • Yexiaomo
    Yexiaomo
    是的, 差點就誤導別人了,非常感謝。2忘寫為2.0了
?
北木

TA貢獻6條經驗 獲得超1個贊

使用數組的冒泡排序,得出最大和最小值。

查看完整回答
反對 回復 2016-12-26
?
望遠

TA貢獻1017條經驗 獲得超1032個贊

#include?<stdio.h>
int?main()
{
????int?arr[5];
????int?i,?temp;
????int?min,?max;
????float?avg;?
????printf("請輸入五個數(默認為整數,以空格分隔):\n");
????for(i?=?0;?i?<?5;i++)
????{
????????scanf("%d",?&arr[i]);
????????if(?i?==?0)
????????{
????????????min?=?arr[i];
????????????max?=?arr[i];
????????????continue;
????????}
????????if(?arr[i]?>?max)
????????{
????????????temp?=?max;
????????????max?=?arr[i];
????????????arr[i]?=?temp;
????????????continue;
????????}
????????else?if(arr[i]?<?min)
????????{
????????????temp?=?min;
????????????min?=?arr[i];
????????????arr[i]?=?temp;
????????}
????}
?????
????avg?=?(float)(min+max)?/?2;
?????
????printf("最大值為:%d?最小值為:%d?平均值:%.2f\n",max,min,?avg);?//結果保留兩位小數?
}

http://img1.sycdn.imooc.com//586084af0001af4a03710100.jpg

查看完整回答
反對 回復 2016-12-26
?
倒影的逆光

TA貢獻1條經驗 獲得超0個贊

不知道你學了數組沒有,a[變量],這個‘變量’可以存儲數的個數。用數組較簡單。

#include"stdio.h"

main()

{

int a[5],i,max=0,min;

? ? float ave;

for(i=0;i<5;i++){

scanf("%d",&a[i]);

if(a[i]>max)

? max=a[i];

}

min=a[0];

for(i=0;i<5;i++){

? if(a[i]<min)

? ? min=a[i];

}

ave=(max+min)/2.0;

printf("max=%d mix=%d ave=%f\n",max,min,ave);

}


查看完整回答
反對 回復 2016-12-26
  • 4 回答
  • 0 關注
  • 2501 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號