c++实现从键盘输入职工人数n、每个职工的编号、每个职工1到3月的工资表,求出每人第一季度的工资(一行求和)、每个月的平均工资(一列求平均值,保留整数)。(输出字段宽度设置为8)
时间: 2024-05-01 17:22:05 浏览: 77
以下是实现代码:
```c++
#include <iostream>
#include <iomanip> //用于设置输出字段宽度
using namespace std;
int main()
{
int n; //职工人数
cout << "请输入职工人数:";
cin >> n;
//定义二维数组用于存储每个职工的工资表
int salary[n][3];
//输入每个职工的编号和1到3月的工资表
for (int i = 0; i < n; i++)
{
cout << "请输入第" << i+1 << "个职工的编号和1到3月的工资表:";
for (int j = 0; j < 3; j++)
{
cin >> salary[i][j];
}
}
//计算每个职工第一季度的工资并输出
cout << setw(8) << "编号" << setw(8) << "第一季度" << endl;
for (int i = 0; i < n; i++)
{
int sum = 0;
for (int j = 0; j < 3; j++)
{
sum += salary[i][j];
}
cout << setw(8) << salary[i][0] << setw(8) << sum << endl;
}
//计算每个月的平均工资并输出
cout << setw(8) << "月份" << setw(8) << "平均工资" << endl;
for (int j = 0; j < 3; j++)
{
int sum = 0;
for (int i = 0; i < n; i++)
{
sum += salary[i][j];
}
int avg = sum / n;
cout << setw(8) << j+1 << setw(8) << avg << endl;
}
return 0;
}
```
代码中使用了 `setw` 函数来设置输出字段宽度,保证输出对齐。注意在计算平均工资时要保留整数,因此除法运算结果需要强制转换为整型。
阅读全文