C++计算收入并排序输出

计算收入并排序输出

已知某单位职工的收入由基本工资、计件工资和扣税构成,其中基本工资为 1000元,计件工资标准为 30元/工件,扣税比例为前两项和的 20% ,请编写程序输入 5 名职工的姓名、工件数,计算其最终收入(收入按 int 计算,去掉小数部分),并按照收入大小进行排序输出,要求每人一行,姓名和收入之间以 TAB 分隔‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬

要求使用结构体实现‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬

例如: 输入:‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬

zhangsan 100
lisi 90
wangwu 88
zhaoliu 95
chenqi 60

输出:‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬

zhangsan	3200
zhaoliu	3080
lisi	2960
wangwu	2912
chenqi	2240

代码如下,如有帮助,请采纳一下,谢谢。

#include <iostream>
using namespace std;
struct Employee 
{
	char name[20];
	int nmb;
	int solary()
	{
		return (1000 + 30 * nmb) * 0.8;
	}
};

int main()
{
	int i =0,j =0;
	Employee tmp;
	Employee arr[5];
	cout << "请输入5名职工的姓名、工件数:" << endl;
	for (i = 0; i < 5;i++)
	{
		cin >> arr[i].name >> arr[i].nmb;
	}
	//排序
	for(i = 0; i< 4;i++)
	{
		for (j = 0; j < 4-i; j++)
		{
			if (arr[j].solary() < arr[j+1].solary())
			{
				tmp = arr[j];
				arr[j] = arr[j+1];
				arr[j+1] = tmp;
			}
		}
	}
	//输出
	for (i = 0; i < 5;i++)
		cout << arr[i].name << "\t" << arr[i].solary() << endl;

	return 0;
}

 

主要用到一些函数和变量的使用,可以先写些界面,再根据问题逻辑调整

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632