24小时热门版块排行榜    

查看: 888  |  回复: 4

FWei灵

铜虫 (小有名气)

[交流] 求代码解释 已有4人参与

各位大虾、、、、

帮帮我解释一下这代码、、小弟是刚学的、、、
、、、、、、谢谢、、、
#include
#include

typedef  int ElemType;
typedef struct LinkNode
{  ElemType data;
   struct LinkNode *next;
}LinkNode,LinkList;

int n; /*n作为整个程序的全局变量*/
LinkList *create(void)
{        LinkNode *head,*p1, *p2;
        n=0;
        p1=p2=(struct LinkNode *)malloc(sizeof(LinkNode));
        scanf("%d",&p1->data);
        head=NULL;
        while(p1->data!=0)
        {        n=n+1;
                if(n==1)
                        head=p1;
                else
                        p2->next=p1;
                p2=p1;
                p1=(struct LinkNode *)malloc(sizeof(LinkNode));
                scanf("%d",&p1->data);
        }
        p2->next=NULL;
        return(head);
}

int insertLink(LinkList *head, int i,ElemType e)
{        LinkNode *p,  *s;  
        int j;
        p=head; j=0;
        while(p && j         {        p=p->next;
                j++;
        }
        if(!p||j>i-1)
        {        printf("无法插入" );
                return 0;
        }
        s=(struct LinkNode *)malloc(sizeof(LinkNode));
        s->data=e;
        s->next=p->next;
        p->next=s;
        return 1;
}

int deleteLink(LinkList *head,int i)
{
        LinkNode *p, *q;
        int j;
        p=head;
        j=0;
        while(p->next && j         {        p=p->next;
                j++;
        }
        if(!(p->next)||j>i-1)
        {        printf("无法删除" );
                return 0;
        }
        q=p->next;
        p->next=q->next;
       
        free(q);
        return 1;
}

void printLink(LinkList *link)
{
        LinkNode *p;
        p=link;
        printf("链表数据结果:\n" );
        while (p)
        {
                printf("%d-> ",p->data);
                p=p->next;
        }
        printf("\n" );
}

void main()
{
        LinkList *link;
        link=create();
        printLink(link);
        insertLink(link,2,99);
        printLink(link);
        deleteLink(link,3);
        printLink(link);
}

[ Last edited by jjdg on 2012-3-9 at 03:02 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

smart0193

木虫 (小有名气)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖
jjdg(金币+1): 感谢参与 2012-03-09 03:01:19
这个程序是一个链表操作的。包括链表的创建、删除等操作。找本数据结构书,都会讲到。这么长的程序,你想咋解释?呵呵。
一个奋斗在三流高校的教育界民工
2楼2012-03-08 19:04:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lurencyj

木虫 (著名写手)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖
xzhdty(金币+1): 欢迎常来程序语言看看 2012-03-08 19:57:36
楼主这个是链表中最简单的单向链表,它包含两个域,一个信息域和一个指针域。这个链接指向列表中的下一个节点,而最后一个节点则指向一个空值。

一个单向链表的节点被分成两个部分。第一个部分保存或者显示关于节点的信息,第二个部分存储下一个节点的地址。单向链表只可向一个方向遍历。链表最基本的结构是在每个节点保存数据和到下一个节点的地址,在最后一个节点保存一个特殊的结束标记。

最基本的操作:建立create, 插入insertLink, 删除deleteLink, 当然还有查找遍历。
很女子很弓虽大
3楼2012-03-08 19:05:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lt292

金虫 (正式写手)

Holy Shit

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖
jjdg(金币+1): 感谢参与 2012-03-09 03:01:27
好几年不看c语言,我表示,我已经看不懂了
记忆中的颜色,慢慢褪去,变成一缕缕的黑丝,最终消失在茫茫的空白里,一去不返```
4楼2012-03-08 20:36:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ltcc2000

木虫 (著名写手)

★
小木虫(金币+0.5):给个红包,谢谢回帖
其中有很多宏语句,看不懂
海阔凭鱼妖
5楼2012-03-09 09:37:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 FWei灵 的主题更新
普通表情 龙 兔 虎 猫 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[硕博家园] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +4 hKe7U1kad5Sg 2026-10-31 7/350 2026-11-02 00:34 by xzcv0Tehd8lQ
[基金申请] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +4 hKe7U1kad5Sg 2026-10-31 8/400 2026-11-02 00:34 by xzcv0Tehd8lQ
[公派出国] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +6 1uaZt2kAZj2S 2026-10-31 8/400 2026-11-02 00:11 by xzcv0Tehd8lQ
[考研] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +5 1uaZt2kAZj2S 2026-10-30 14/700 2026-11-02 00:08 by xzcv0Tehd8lQ
[硕博家园] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +4 1uaZt2kAZj2S 2026-10-30 15/750 2026-11-01 23:58 by xzcv0Tehd8lQ
[博后之家] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 hKe7U1kad5Sg 2026-10-31 5/250 2026-11-01 22:24 by xzcv0Tehd8lQ
[考博] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +3 hKe7U1kad5Sg 2026-10-31 6/300 2026-11-01 22:11 by xzcv0Tehd8lQ
[基金申请] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +3 hKe7U1kad5Sg 2026-10-31 6/300 2026-11-01 22:11 by xzcv0Tehd8lQ
[硕博家园] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +4 xvJS1BYDxvBS 2026-10-31 7/350 2026-11-01 22:05 by xzcv0Tehd8lQ
[考博] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +4 xvJS1BYDxvBS 2026-10-31 7/350 2026-11-01 22:01 by xzcv0Tehd8lQ
[硕博家园] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +5 xvJS1BYDxvBS 2026-10-31 10/500 2026-11-01 21:52 by xzcv0Tehd8lQ
[教师之家] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +6 X5bHxOULxFqb 2026-10-30 16/800 2026-11-01 21:19 by xzcv0Tehd8lQ
[博后之家] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +4 1uaZt2kAZj2S 2026-10-31 8/400 2026-11-01 16:58 by BCdvBAEpt3zm
[公派出国] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +4 1uaZt2kAZj2S 2026-10-30 15/750 2026-11-01 16:52 by BCdvBAEpt3zm
[论文投稿] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 1uaZt2kAZj2S 2026-10-30 13/650 2026-11-01 16:45 by BCdvBAEpt3zm
[考博] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +5 X5bHxOULxFqb 2026-10-30 22/1100 2026-11-01 16:35 by BCdvBAEpt3zm
[考研] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 xvJS1BYDxvBS 2026-10-31 5/250 2026-11-01 12:51 by BCdvBAEpt3zm
[公派出国] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +4 1uaZt2kAZj2S 2026-10-31 7/350 2026-11-01 12:40 by BCdvBAEpt3zm
[考博] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 1uaZt2kAZj2S 2026-10-30 10/500 2026-11-01 12:27 by BCdvBAEpt3zm
[论文投稿] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +3 1uaZt2kAZj2S 2026-10-31 8/400 2026-11-01 03:59 by YXM1FDCSE8Bn
信息提示
请填处理意见