标题:c语言编程问题求助
只看楼主
zwcssc
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2015-12-27
 问题点数:0 回复次数:0 
c语言编程问题求助
关于学生选修课程系统,已经基本完成了,就是增加课程也就是链表的插入这一块有问题,比如我要增加课程,的确增加了,但是同时覆盖了前面的课程
这是那部分代码,哪里有问题啊
void managementc()//课程管理主函数
{
 struct course * incourse;
 int i,num1;
 printf("\t\t\t课程管理\n");
 printf("1.课程录入\n");
 printf("2.返回主菜单\n");
 printf("请选择(1~2):\n");
 scanf("%d",&i);
 switch(i)
 {
 case(1):
 {
 incourse=(struct course *)malloc(sizeof(struct course));
 printf("课程编号\t课程名称\t学分\t课程人数上限\n");
 scanf("%d", &COU.num1);
 scanf("%s", COU.name1);
 scanf("%d", &COU.score);
 scanf("%d", &COU.Melepeo);
 incourse->nelepeo=0;
 insertc(incourse);
 break;
 }
 case(2):
 break;
 }
}
void insertc(struct course *incourse)//课程管理子函数(增加课程)
{
 struct course *p0,*p1,*p2;
 p1=head1;
 p0=incourse;
 if(head1==NULL)
 {
 head1=p0;
 p0->next=NULL;
 }
 else
 {
 while((p0->num1 > p1->num1) && (p1->next!=NULL))
 {
 p2=p1;
 p1=p1->next;
 }
 if(p0->num1 <= p1->num1)
 {
 if(head1==p1) head1=p0;
 else p2->next=p0;
 p0->next=p1;
 }
 else
 {
 p1->next=p0;
 p0->next=NULL;
 }
 }
 N1=N1+1;
}
搜索更多相关主题的帖子: course c语言编程 课程 
2015-12-27 18:07



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-460591-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.341151 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved