c语言编程问题:设计一个公司职员的数据结构,并使用结构指针数组存储志愿信息,统计公司员工工资总额。。

c语言编程问题:设计一个公司职员的数据结构,并使用结构指针数组存储志愿信息,统计公司员工工资总额和平均工资。这个题目我先做了一半就是统计并录入职工信息,结果出错啊蛋疼。。... c语言编程问题:设计一个公司职员的数据结构,并使用结构指针数组存储志愿信息,统计公司员工工资总额和平均工资。
这个题目我先做了一半就是统计并录入职工信息,结果出错啊蛋疼。。。
源程序如下:#include "stdio.h"
#include "string.h"
#include "malloc.h"
typedef struct employee
{
int age;
char *name;
double salary;
}*PEMP;

void main()
{
void reading(PEMP,int);
int n;
PEMP company[30];
printf("please inpute the total number of employees\n");
scanf("%d",&n);
reading(company,n);

}
void update(PEMP a,int id,int age,char *name,int salary)
{
PEMP emp;
emp=(PEMP)malloc(sizeof(struct employee));
emp->age=age;
emp->salary=salary;
emp->name=name;
a[id]=emp;

}
void reading(PEMP b,int x)
{
int n=0,age,salary;
char name[10];
for(;n<x;n++)
{
printf("please input the %d date:name age salary\n");
scanf("%s %d %d",name,&age,&salary);
update(b,n,age,name,salary);
}
}
报错信息如图片所示哪位大侠到底哪里错了。。。。。蛋疼的❤都碎了》》》
展开
 我来答
xoalyg
推荐于2016-02-11 · TA获得超过4178个赞
知道大有可为答主
回答量:2356
采纳率:100%
帮助的人:2373万
展开全部
/*
please input the total number of employees : 3
please input 1/3 massage:name age salary
胥立畅 32 6890.50
please input 2/3 massage:name age salary
王莹莹 24 3698.85
please input 3/3 massage:name age salary
李大海 28 4896.80
胥立畅 32 6890.00
王莹莹 24 3698.00
李大海 28 4896.00

Press any key to continue
*/
#include <stdio.h>
#include <string.h>
#include <malloc.h>

typedef struct employee {
int age;
char *name;
double salary;
}PEMP;

void update(PEMP a[],int id,int age,char *name,double salary) {
a[id].age = age;
a[id].salary = salary;
a[id].name = (char *)malloc(strlen(name)*sizeof(char) + 1);
strcpy(a[id].name,name);
}

void reading(PEMP a[],int n) {
int i,age;
double salary;
char name[30];
for(i = 0;i < n;++i) {
printf("please input %d/%d massage:name age salary\n",i + 1,n);
scanf("%s %d %lf",name,&age,&salary);
update(a,i,age,name,salary);
}
}

double Addup(PEMP *a,int n) {
int i;
double sum = 0.0;
for(i = 0; i < n; ++i)
sum += a[i].salary;
return sum;
}

void Show(PEMP a[],int n) {
int i;
for(i = 0; i < n; ++i)
printf("%s %d %.2lf\n",a[i].name,a[i].age,a[i].salary);
printf("\n");
}

int main() {
int n;
double sum;
PEMP company[30];
printf("please input the total number of employees : ");
scanf("%d",&n);
reading(company,n);
Show(company,n);
sum = Addup(company,n);
printf("工资总额:%.2lf,平均工资 : %.2lf\n",sum,sum/n);
return 0;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
--
2022-12-05 广告
图形化编程简单理解为用积木块形式编程,scratch和python也是其中的一种,属于入门级编程,以其简单生动的画面获得无数学生的喜爱,深圳市创客火科技有限公司是一家做教育无人机的公司,旗下有编程无人机,积木无人机及室内外编队,每款飞机含有... 点击进入详情页
本回答由--提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式