2877: 结构体—职工信息结构体
Description
编写程序,定义一个存放职工信息的结构体类型,职工信息包括职工姓名、工作年限、工资总额。初始化5名职工的信息,对工作年限超过30年的职工每人加100元工资,要求分别输出工资变化之前和之后的所有职工的信息。
Input
输入5个员工的职工姓名、工作年限、工资总额
Output
输出两部分,第一部分输出工资变化之前所有职工的信息,第二部分输出工资变化之后的所有职工的信息
Sample Input
zhang1 5 1000
zhang2 10 2000
zhang3 20 3000
zhang4 40 4000
zhang5 50 5000
Sample Output
原始工资
姓名 年限 工资
zhang1 5 1000
zhang2 10 2000
zhang3 20 3000
zhang4 40 4000
zhang5 50 5000
加薪后工资
姓名 年限 工资
zhang1 5 1000
zhang2 10 2000
zhang3 20 3000
zhang4 40 4100
zhang5 50 5100
HINT
空4格
参考解答
#include <stdio.h>
#define N 5
struct Stuff
{
char name[8]; //职工姓名
int year; //工作年限
int salary; //工资
};
int main( )
{
struct Stuff stuff[N];
int i;
//输入
for(i=0; i<N; i++)
{
scanf("%s%d%d",stuff[i].name, &stuff[i].year,&stuff[i].salary);
}
//输出1
printf("原始工资\n");
printf("姓名 年限 工资\n");
for(i=0; i<N; i++)
{
printf("%s %d %d\n",stuff[i].name, stuff[i].year,stuff[i].salary);
}
//输出2
printf("加薪后工资\n");
printf("姓名 年限 工资\n");
for(i=0; i<N; i++)
{
printf("%s %d ",stuff[i].name, stuff[i].year);
if(stuff[i].year>=30)
printf("%d\n",stuff[i].salary+100);
else
printf("%d\n",stuff[i].salary);
}
return 0;
}