#include <iostream>
#include <string>
#include <sstream>
using namespace std;
std::stringstream str2digit;
class Staff
{
private:
int i,j,k;
double t;
double sum[10],arry[10];
string name[10][10];
public:
Staff();
void input();
void output();
void computer();
void put();
};
Staff::Staff()
{
cout<<"请输入十个员工的姓名:";
for(i=0;i<=9;i++)
{cin>>name[i][0];}
}
void Staff::input()
{
for(int i=0;i<=9;i++)
{
cout<<"请输入"<<name[i][0]<<"员工四个月的工资分别为多少:";
for(int j=1;j<=4;j++)
{cin>>name[i][j];}
}
}
void Staff::output()
{
for(int i=0;i<=9;i++)
{
cout<<name[i][0]<<endl;
for(int j=1;j<=4;j++)
{cout<<"在第"<<j<<"个月的工资为"<<name[i][j]<<endl;}
}
}
void Staff::computer()
{
double t=0.0;
for(int i=0;i<=9;i++)
{
for(int j=0;j<=4;j++)
{
str2digit<<(name[i][j]);str2digit>>t;
sum[i]+=t;
}
cout<<sum[i]<<endl;
arry[i]=sum[i]/4.0;
}
}
void Staff::put()
{
for(k=0;k<=9;k++)
{
cout<<name[k][0]<<"四个月的总工资为:"<<sum[k]<<endl;
cout<<name[k][0]<<"四个月的平均工资为:"<<arry[k]<<endl;
}
}
int main()
{
Staff s;
s.input();
s.output();
s.computer();
s.put();
return 0;
}
程序是写输入十个员工的姓名并输入每四个月的工资
并输出每四个月工资和总工资与平均工资
我用了string二维数组 但我想问一下就是在computer这个构造函数里面 我的想法是把string里面的每四个月工资都分别转到double这个数组里 但是查了很多资料最后写成这样还是算不出平均工资和总工资
想问问大家 string里面的数值如何转化成double数组被引用 (新手代码写的可能有点乱 勿喷)