| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 336 人关注过本帖
标题:9999 哪位大哥帮我看下这个程序!
只看楼主 加入收藏
yangyongjie23
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2008-5-14
收藏
 问题点数:0 回复次数:0 
9999 哪位大哥帮我看下这个程序!
其实程序目的很简单就是建立2个链表 ! 然后比较2个链表 ,
将 第一个链表中与第2个链表 学号(num) 相同的节点, 在 输出新的第一个连表。 做了一下午努力还是没出来 希望哪位高手耐心帮我下 万分感谢!
编程新手:XXX

#include<stdio.h>
#include<stdlib.h>
typedef struct student
{
int num;
float score;
struct student *next;
}kk;

kk a[3];
kk b[3];



void fun1(kk**head1,kk**head2)/*创建2个链表*/
{
int i;
*head1=&a[0];
*head2=&b[0];
a[0].num=10011;a[0].score=97;
a[1].num=10013;a[1].score=94;
a[2].num=10015;a[2].score=90;

b[0].num=10012;b[0].score=97;
b[1].num=10013;b[1].score=93;
b[2].num=10016;b[2].score=92;

for(i=0;i<2;i++)
{
a[i].next=&a[i+1];
b[i].next=&b[i+1];
}
a[i].next=b[i].next=NULL;
}




void fun2(kk *head) /*输出链表*/
{
kk *p;
p=head;
while(p!=NULL)
{
printf("%d,%.2f\n",p->num,p->score);
p=p->next;
}
}



kk* fun3(kk *head,kk *p)/*删除符合要求的节点*/
{
kk *p1,*p2;
if(head==NULL)
{
printf("error!\n");
exit(0);
}
else
{
p1=head;
while(p1->num!=p->num&&p1->next!=NULL)
{
p2=p1;
p1=p1->next;
}
if(p1->num==p->num)
{
if(p1==head)
head=p1->next;
else
p2->next=p1->next;
}
else
printf("is no lisn!\n");
}
return head;
}

void fun4(kk* head1,kk *head2)/*删除a 与b num相同 的节点*/
{
kk *p1,*p2;
p1=head1;
p2=head2;
while(p1->next!=NULL)
{
while(p1->num!=p2->num&&p2->next!=NULL)
p2=p2->next;

if(p1->num==p2->num)
head1=fun3(head1,p2);/*调用fun3()来删除节点*/


p1=p1->next;
}
printf("The new chain a table is:\n");
fun2(head1);/*输入删除节点后的a 链表*/
}



void main()
{
kk a,*head1,*head2;


fun1(&head1,&head2);/*创建2个链表*/
printf("The a link:\n");
fun2(head1); /*输出第一个链表*/
printf("\n");
printf("The b link:\n");
fun2(head2); /*输出第2个链表*/
printf("\n");

fun4(head1,head2);/*删除链表a 中和b 'num' 相同的元素*/


}
搜索更多相关主题的帖子: include 
2008-05-14 17:16
快速回复:9999 哪位大哥帮我看下这个程序!
数据加载中...
 
   



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

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