Description
有5个职工,每个职工的数据包括:职工号(字符数组型)、姓名(字符数组型)、工资(整型),编写程序要求从键盘上输入职工们的数据,输出高于平均工资的职工信息及高于平均工资的职工人数。
Input
输入仅5行,输入5个职工的职工号、姓名、工资,要求数据之间用空格隔开。
Output
输出工资高于平均工资的职工信息,每个职工信息占一行;输出高于平均工资的职工人数,占一行。
Sample Input
111 yi 9700
222 er 9800
333 san 6000
444 si 9500
555 wu 5600
Sample Output
111 yi 9700
222 er 9800
444 si 9500
number=3
代码:
#include <stdio.h>
#include <stdlib.h>
#define N 5
int main()
{
struct staff
{
char num[20];
char name[20];
int sal;
};
struct staff a[N],b[N];
int i,people=0,sum=0;
for(i=0; i<N; i++)
{
scanf("%s",a[i].num);
scanf("%s",a[i].name);
scanf("%d",&a[i].sal);
}
for(i=0; i<N; i++)
sum=sum+a[i].sal;
float ave=(sum*1.0)/N;
for(i=0; i<N; i++)
if(a[i].sal>ave)
{
b[people]=a[i];
people++;
}
for(i=0; i<people; i++)
printf("%s %s %d\n",b[i].num,b[i].name,b[i].sal);
printf("number=%d",people);
return 0;
}