以下程序从文本文件worker.txt中输入10个职工的信息(包括工号和工资),然后计算并输出平均工资,再从键盘上输入一个职工号,查找并输出该职工的信息,如果没有找到,则输出Not Found。假设文件操作总是成功的。
#include<stdio.h>
struct worker
{/*职工结构体*/
int num; /*工号*/
float pay /*工资*/
struct worker *next;
};
float averpay(struct worker per[],int n)
{
float sum=0;
int i;
for(i=0;i<n;i++)
sum+=______;
return sum/n;
}
struct worker*find(struct worker per[],int n,int num)
{
inti;
for(i=0;i<n;i++)
if(per[i].num==num)
return______;
return NULL;
}
main ()
{
struct worker per[10],*p;
float x,ave;
int num,i;
FILE *fp;
/*从文件中输入10个职工的信息*/
fp=______;
for(i=0:i<10; i++)
{
fscanf(fp,"%d%f",&num,&x);
per[i].num=num;
per[i].pay=x;
}
fclose(fp);
/*计算并输出平均工资*/
ave=averpay(per,10);
printf("Average=%f\n",ave);
/*查找某个职工*/
scanf("%d",&num);
p=______;
if(P!=NULL)
printf("%d,%f\n",p->num,p->pay);
else
printf("Not Found\n");
}
A.txt中输入10个职工的信息(包括工号和工资),然后计算并输出平均工资,再从键盘上输入一个职工号,查找并输出该职工的信息,如果没有找到,则输出Not
B.h>
C.num==num)
D.num=num;
E.pay=x;