【发布时间】:2021-03-30 02:17:35
【问题描述】:
我无法获得该程序的最终总数,我在函数中有total+=amount;,但它没有成功,我已经设置了所有变量,但我不太确定我可以放置在哪里一行代码让它计算总数。
#include <iostream>
#include<string>
#include<iomanip>
using namespace std;
float calculateCharges(float hours, float &total);
int main()
{
int MAX=3;
float charge[MAX];
float hours[MAX];
float total=0;
int i;
int columns[]={10,9,10};
for(i=0; i<MAX; i++)
{
cout << "Enter the amount of hours for customer " <<i+1<<": ";
cin >> hours[i];
charge[i] = calculateCharges(hours[i], total);
}
string border;
border.assign(columns[0]+columns[1]+columns[2], '-');
cout<<border<<endl
<<left<<setw(columns[0])<<"customer"
<<setw(columns[1])<<"hours"
<<setw(columns[2])<<"charge"
<<endl;
for(i=0; i<MAX; i++)
cout<<left<<setw(columns[0])<<i+1
<<right<<setw(2)<<fixed<<setprecision(2)<<hours[i]
<<setw(columns[2])<<charge[i]<<endl;
cout<<border<<endl;
cout<<right<<setw(columns[0]+columns[1])<<"total: "<<left<<" $"<<total<<endl;
return 0;
}
float calculateCharges(float hours, float &total)
{
float amount = 20 + (5*((int)hours-3));
if((int)hours<=3)
return 20;
else return amount;
}
【问题讨论】:
-
这是否正确:
assign(columns[0] + columns[1] + columns[2], '-');?这会将columns之前 的前3 个值传递给assign函数。
标签: c++