2017-01-27 36 views
0

在C++剛開始編程的無效操作數的幾個星期前,我遇到了這個問題:錯誤:類型的「浮動」和C「詮釋」二進制「操作符%」 ++

float a,i,b,c,d,e,f; 
cin>>a; 
cin>>c; 
if(c%2==0) 
{ 
    d=c; 
    e=1; 
} 
else 
{ 
    d=0; 
    e=0; 
} 

for (i=2;i<=a;i++) 
{ 
    cin>>b; 
    if(b%2==0) 
    { 
     d=d+b; 
     e=e+1; 
    } 
} 
f=d/e; 
if(e==0) 
    cout<<"0"; 
else 
    cout<<fixed<<setprecision(2)<<f; 

理想的情況下,該程序應在屏幕上顯示代表算術平均值的數字「f」。

+1

模運算符'%'僅針對整數運算數定義。這適用於C,C++和AFAIK Java。其他一些編程語言允許左手操作數爲十進制。 2.532%2將產生0.532。基本問題是右邊的操作數不是整數 –

+0

如錯誤消息所示,不能在浮點類型上使用'%'運算符。 –

回答

相關問題