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);
}
}
报错信息如图片所示哪位大侠到底哪里错了。。。。。蛋疼的❤都碎了》》》 展开
这个题目我先做了一半就是统计并录入职工信息,结果出错啊蛋疼。。。
源程序如下:#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);
}
}
报错信息如图片所示哪位大侠到底哪里错了。。。。。蛋疼的❤都碎了》》》 展开
1个回答
展开全部
/*
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;
}
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 广告
2022-12-05 广告
图形化编程简单理解为用积木块形式编程,scratch和python也是其中的一种,属于入门级编程,以其简单生动的画面获得无数学生的喜爱,深圳市创客火科技有限公司是一家做教育无人机的公司,旗下有编程无人机,积木无人机及室内外编队,每款飞机含有...
点击进入详情页
本回答由--提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询