PTA 7-1 计算职工工资 (15 分)

本文介绍了一个C语言程序,用于计算员工的实际工资。程序接收员工的基本信息,包括姓名、基本工资、浮动工资和支出,然后计算并输出实发工资,保留两位小数。此程序适用于小型企业或个人开发者学习。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

`
7-1 计算职工工资 (15 分)
给定N个职员的信息,包括姓名、基本工资、浮动工资和支出,要求编写程序顺序输出每位职员的姓名和实发工资(实发工资=基本工资+浮动工资-支出)。

输入格式:
输入在一行中给出正整数N。随后N行,每行给出一位职员的信息,格式为“姓名 基本工资 浮动工资 支出”,中间以空格分隔。其中“姓名”为长度小于10的不包含空白字符的非空字符串,其他输入、输出保证在单精度范围内。

输出格式:
按照输入顺序,每行输出一位职员的姓名和实发工资,间隔一个空格,工资保留2位小数。

输入样例:
3
zhao 240 400 75
qian 360 120 50
zhou 560 150 80
输出样例:
zhao 565.00
qian 430.00
zhou 630.00

#include<stdio.h>
struct member
{
	char name[80];//职员名字 
	float  bwage;//基本工资 
	float fwage;//浮动工资 
	float  pay;//支出 
	float awage;//实发工资	
 }; 
 int main()
 {
 	int i,N;
 	struct member members[1000];
	scanf("%d",&N);
	for(i=0;i<N;i++)
	{
		scanf("%s",&members[i].name);
		scanf("%f",&members[i].bwage);
	      scanf("%f",&members[i].fwage);
		scanf("%f",&members[i].pay);
		members[i].awage = (members[i].bwage+members[i].fwage)-members[i].pay;
		
	 } 
 	for(i=0;i<N;i++)
 	{
 		
 		printf("%s %.2f\n",members[i].name,members[i].awage);//输出每一位职员的姓名和实发工资
 		
      }
 	
}
为了使用PTA系统计算职工工资,通常需要遵循这样的流程来设计一个简单的算法或者编程解决方案: 定义结构体或类表示员工信息,包括但不限于姓名、基本工资、浮动工资以及支出等字段。 接收输入数据,这可能涉及到读取文件或是从命令行获取用户输入的数据。对于每一个员工记录,创建相应的对象实例以存储这些信息。 遍历所有员工的对象实例,针对每一位员工应用实发工资的计算公式:实发工资 = 基本工资 + 浮动工资 - 支出。 将计算得到的结果输出,可以是打印到屏幕上或者是保存至指定位置的文件中去。 下面是一个简化的Python代码示例用于演示如何实现这一过程: ```python class Employee: def __init__(self, name, base_salary, floating_salary, expenses): self.name = name self.base_salary = base_salary self.floating_salary = floating_salary self.expenses = expenses # Calculate the actual salary for an employee. def calculate_actual_salary(self): return self.base_salary + self.floating_salary - self.expenses def main(): employees = [] n = int(input()) # Number of employees for _ in range(n): name, base_salary, floating_salary, expenses = input().split() base_salary = float(base_salary) floating_salary = float(floating_salary) expenses = float(expenses) emp = Employee(name, base_salary, floating_salary, expenses) employees.append(emp) for emp in employees: print(f"{emp.name}: {emp.calculate_actual_salary():.2f}") if __name__ == "__main__": main() ``` 这段代码假设了输入格式与描述相匹配,并且每一行代表一位员工的信息。实际部署时还需要考虑更多的边界情况和错误处理机制。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值