建立一个链表,每个结点数据要有职工号、工资。
答案:1 悬赏:50 手机版
解决时间 2021-03-13 09:51
- 提问者网友:皆是孤独
- 2021-03-12 23:26
建立一个链表,每个结点数据要有职工号、工资。
最佳答案
- 五星知识达人网友:千杯敬自由
- 2021-03-12 23:54
这个比较简单,下面是我刚写好的程序
#include
#include
struct stud
{
int num;
float wage;
struct stud *next;
};
struct stud *head=NULL;
struct stud *creat()
{
struct stud *p1;
struct stud *p2;
struct stud *p;
p=(struct stud*)malloc(sizeof(struct stud));
p1=p;
p2=p1;//p1存下一个节点,p2存当前节点
head=p1;
printf("请输入职工的职工号,当输入为0时结束\n");
scanf("%d",&p1->num);
if(p1->num!=0)
{
printf("请输入该职工的工资:");
scanf("%f",&p1->wage);
}
else
{free(p1);p2=NULL;p2->next=NULL;head=NULL;}
while(p1->num!=0)
{
p=(struct stud*)malloc(sizeof(struct stud));
p1=p;
p2=p1;//p1存下一个节点,p2存当前节点
head=p1;
printf("请输入职工的职工号,当输入为0时结束\n");
scanf("%d",&p1->num);
if(p1->num!=0)
{
printf("请输入该职工的工资:");
scanf("%f",&p1->wage);
}
p2->next=p1;
}
free(p1);p2=NULL;p2->next=NULL;return head;
}
void main()
{
creat();
}
#include
#include
struct stud
{
int num;
float wage;
struct stud *next;
};
struct stud *head=NULL;
struct stud *creat()
{
struct stud *p1;
struct stud *p2;
struct stud *p;
p=(struct stud*)malloc(sizeof(struct stud));
p1=p;
p2=p1;//p1存下一个节点,p2存当前节点
head=p1;
printf("请输入职工的职工号,当输入为0时结束\n");
scanf("%d",&p1->num);
if(p1->num!=0)
{
printf("请输入该职工的工资:");
scanf("%f",&p1->wage);
}
else
{free(p1);p2=NULL;p2->next=NULL;head=NULL;}
while(p1->num!=0)
{
p=(struct stud*)malloc(sizeof(struct stud));
p1=p;
p2=p1;//p1存下一个节点,p2存当前节点
head=p1;
printf("请输入职工的职工号,当输入为0时结束\n");
scanf("%d",&p1->num);
if(p1->num!=0)
{
printf("请输入该职工的工资:");
scanf("%f",&p1->wage);
}
p2->next=p1;
}
free(p1);p2=NULL;p2->next=NULL;return head;
}
void main()
{
creat();
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯