剧号 2021-06-28 16:56 采纳率: 50%
浏览 22

为啥我输完第二个人的信息直接就退出去了,用的devc++

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct link{
	int point;
	char name[20];
	int money;
	int age;
	struct link *next;
};
 void Printf(struct link*head);
struct link *Insert(struct link *head);
 struct link * Create();

int main(void)
{
	int c;
	struct link *head=NULL;
	printf("人事管理系统\n");
	do 
	{
		printf("1.插入新成员\n"); 
		printf("2.打印系统中所有成员\n"); 
		printf("3.删除某成员\n"); 
		printf("0.退出系统\n"); 
		scanf("%d",&c);
		if(c==1)
		{
			printf("输入工号 姓名 薪资 年龄\n");
			head=Insert(head);
		 } 
		 else if(c==2)
		 {
		 	Printf(head);
		 }
		 else if(c==3)
		 {
		 	
		 }
	}while(c!=0);
	return 0; 
 } 
 
 
 
 void Printf(struct link*head)
 {
 	struct link *p=head;
 	while(p)
 	{
 		printf("%d %s %d %d\n",p->point,p->name,p->money,p->age);
 		p=p->next;
	 }
 }
 
 
 struct link * Create()
 {
 	struct link *head=(struct link *)malloc(sizeof(struct link *));
 	head->next=NULL;
 	return head;
 }
 
 
 struct link *Insert(struct link *head)
 {
 	struct link *p=head,*mo,*h=NULL;
 	int fen,m,a;
	char na[20];
	scanf("%d %s %d %d",&fen,na,&m,&a);
 	if(!head)
 	{
 		head=Create();
 	    head->money=m;
 	    strcpy(head->name,na);
 		head->point=fen;
 		head->age=a;
	 }
	 else
	 {
	 	mo=(struct link *)malloc(sizeof(struct link *));
	 	mo->point=fen;
	 	strcpy(mo->name,na);
	 	mo->money=m;
	 	mo->age=a;
	 	while((mo->point>p->point)&&(p->next!=NULL))
	 	{
	 		h=p;
	 		p=p->next;
		 }
		 if(mo->point<=p->point)
		 {
		 	if(head==p)
		 	head=mo;
		 	else
		 	mo->next=p;
		 }
		 else
		 {
		 	p->next=mo;
		 	mo->next=NULL;
		 }
	 }
	 		 return head;
 }
 
  • 写回答

2条回答 默认 最新

  • 秋杪 2021-06-28 17:05
    关注

    你输入的是什么样的,我这边用vc6.0测试输入第二组没有退出

    评论

报告相同问题?

悬赏问题

  • ¥15 电视版的优酷可以设置电影连续播放吗?
  • ¥50 复现论文;matlab代码编写
  • ¥30 echarts 3d地图怎么实现一进来页面散点数据和卡片一起轮播
  • ¥15 数字图像的降噪滤波增强
  • ¥15 心碎了,为啥我的神经网络训练的时候第二个批次反向传播会报错呀,第一个批次都没有问题
  • ¥15 MSR2680-XS路由器频繁卡顿问题
  • ¥15 VB6可以成功读取的文件,用C#读不了
  • ¥15 如何使用micpyhon解析Modbus RTU返回指定站号的湿度值,并确保正确?
  • ¥15 C++ 句柄后台鼠标拖动如何实现
  • ¥15 有人会SIRIUS 5.8.0这个软件吗