计算职工工资
给定N个职员的信息,包括姓名、基本工资、浮动工资和支出,要求编写程序顺序输出每位职员的姓名和实发工资(实发工资=基本工资+浮动工资-支出)。
输入格式:
输入在一行中给出正整数N。随后N行,每行给出一位职员的信息,格式为“姓名 基本工资 浮动工资 支出”,中间以空格分隔。
输出格式:
按照输入顺序,每行输出一位职员的姓名和实发工资,间隔一个空格。
输入样例:
3
zhao 240 400 75
qian 360 120 50
zhou 560 150 80
输出样例:
zhao 565
qian 430
zhou 630
首先创造结构体 给定N个职员的信息
struct people { string name; int jiben; int fudong; int zhichu; };
创建结构体数组 存放信息;
struct people a[3];
主函数中要创建一个数组算实发工资
然后用for循环存入每个人的信息 并算出实发工资
int s[3]; for (int i = 0; i < N; i++) { cin >> a[i].name >> a[i].jiben >> a[i].fudong >> a[i].zhichu; s[i] = a[i].jiben + a[i].fudong - a[i].zhichu; }
最后依次输出每个人的名字和实发工资
完整代码是
#include<iostream> using namespace std; #include<string> struct people { string name; int jiben; int fudong; int zhichu; }; struct people a[3]; int main() { int N = 0; cin >> N; int s[3]; for (int i = 0; i < N; i++) { cin >> a[i].name >> a[i].jiben >> a[i].fudong >> a[i].zhichu; s[i] = a[i].jiben + a[i].fudong - a[i].zhichu; } for (int c = 0; c < N; c++) { cout << a[c].name << " " << s[c] << endl; } return 0; }