6 回答

TA貢獻(xiàn)11條經(jīng)驗(yàn) 獲得超18個(gè)贊
#include<iostream> using?namespace?std; double?ave(double?a,double?b) { return?(a+b)/2.0; } int?main() { double?a,b; while?(cin>>a>>b) { cout<<a<<"和"<<b<<"的平均數(shù)是"<<ave(a,b)<<endl;? } }
這個(gè)是C++版,實(shí)現(xiàn)了多組數(shù)據(jù)的輸入。測(cè)試結(jié)果如下:
#include<stdio.h> double?ave(double?a,double?b) { return?(a+b)/2.0; } int?main() { double?a,b; while?(scanf("%lf?%lf",&a,&b)!=EOF) { printf("%.2f和%.2f的平均數(shù)是%.2f\n",a,b,ave(a,b)); } }
這個(gè)是C語(yǔ)言版本,測(cè)試結(jié)果如下:
值得說(shuō)明的是,C語(yǔ)言里面的浮點(diǎn)型在不限制小數(shù)點(diǎn)時(shí)默認(rèn)是保留小數(shù)點(diǎn)后六位,C++默認(rèn)則是如果小數(shù)部分超過(guò)六位則顯示六位,不超過(guò)六位則顯示完整的小數(shù),后面不會(huì)補(bǔ)0,比如1.5就顯示1.5而不會(huì)在后面補(bǔ)0.
C語(yǔ)言版的.2控制2位小數(shù),C++控制輸出會(huì)比C語(yǔ)言麻煩很多還要包含<iomanip>,寫起來(lái)也麻煩。
浮點(diǎn)型數(shù)據(jù)的輸入用lf但是輸出最好用f,這在表面上沒(méi)有區(qū)別,但在算法競(jìng)賽中有時(shí)(少數(shù)時(shí)候)會(huì)因?yàn)榫葐?wèn)題出錯(cuò)。

TA貢獻(xiàn)17條經(jīng)驗(yàn) 獲得超7個(gè)贊
#include?<stdio.h> double?avg(double?a,?double?b) { ????double?average?=?(a?+?b)?/?2.0; ????return?average; } int?main() { ????double?a,?b,?average; ????scanf("%lf?%lf",?&a,?&b); ????average?=?avg(a,?b); ????printf("%lf\n",?average); ????return?0; }

TA貢獻(xiàn)4條經(jīng)驗(yàn) 獲得超3個(gè)贊
#include?<stdio.h> double?funcS(float?a,float?b) { double?s=(a+b)/2; return?s; } int?main() { float?a; float?b; scanf("%d,%d\n",&a,&b); double?s?=?funS(a,b); printf("%d\n",s); }
代碼工作原理解析:
運(yùn)行后,輸入第一個(gè)數(shù),再輸入逗號(hào)(英文半角),再輸入第二個(gè)數(shù),回車。
程序會(huì)自動(dòng)輸出平均數(shù)并換行。

TA貢獻(xiàn)392條經(jīng)驗(yàn) 獲得超170個(gè)贊
用一個(gè)函數(shù)
int avg(int x,int y) { ? ?//返回類型是int,傳入的兩個(gè)參數(shù)都是int類型
return (x+y)/2; ? ? ? //將傳入的兩個(gè)數(shù)相加再除以2,也就是平均數(shù),返回這個(gè)數(shù)值.
}
這樣你就可以實(shí)現(xiàn)了,比如有一個(gè)數(shù)int a=20;另外一個(gè)數(shù)int b=10;
則平均數(shù)為int c=avg(a,b); //變量c是為了接收這個(gè)函數(shù)的返回值,也就是接收平均值
- 6 回答
- 0 關(guān)注
- 2597 瀏覽
添加回答
舉報(bào)