| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 577 人关注过本帖
标题:单链表选首领问题
只看楼主 加入收藏
caochuan2000
Rank: 2
等 级:论坛游民
帖 子:66
专家分:35
注 册:2009-4-11
结帖率:76.47%
收藏
已结贴  问题点数:20 回复次数:3 
单链表选首领问题
#include <stdio.h>
#include <stdlib.h>
struct node
{
    int code;
    struct node *next;
}NODE,*LinkList;
LinkList create_list(int n)
{
    LinkList head,p;
    int i;
    head=(node*)malloc(sizeof(node));
    head->code=1;head->next=head;
    for(i=n;i>1;--i)
    {
        p=(node*)malloc(sizeof(node));
        p->code=i;p->next=head->next;head->next=p;
    }
    return head;
}
void output(LinkList head)
{
    LinkList p;
    p=head;
    do{
        printf("%4d",p->code);p=p->next;
    }while(p!=head);
    printf("\n");
}
void play(LinkList head,int n)
{
    LinkList p,q;
    int c=1,k;
    p=head;k=n;
    while(k>1)
    {
        if(c==2)
        {
            q=p->next;p->next=q->next;printf("%4d is out!",q->code);free(q);c=0;k--;
        }
        else
        {
            c++;p=p->next;
        }
    }
 printf("\n%4d was the winner.",p->code);     
}
void main()
{
    LinkList head;
    int n;
    printf("input the number of players:");scanf("%d",&n);
    head=create_list(n);
    if(head)
    {
        output(head);
        play(head,n);
    }
}
按书上差不多的写的,麻烦帮我看看有什么问题,我运行不了

[ 本帖最后由 caochuan2000 于 2009-11-3 17:36 编辑 ]
搜索更多相关主题的帖子: 首领 单链 
2009-11-03 17:18
caochuan2000
Rank: 2
等 级:论坛游民
帖 子:66
专家分:35
注 册:2009-4-11
收藏
得分:0 
刚刚我把程序中有NODE和LinkList的地方都改成struct node和struct node *就运行正常了..是不是不能像书上那样用结构指针变量啊?
2009-11-03 17:34
玩出来的代码
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:河南新乡
等 级:贵宾
威 望:11
帖 子:742
专家分:2989
注 册:2009-10-12
收藏
得分:20 
当结构体用typedef定义后,才能在后面用用NODE,LinkList去定义变量,在结构体定义前面加个typedef。

离恨恰如春草,更行更远还生。
2009-11-03 21:26
caochuan2000
Rank: 2
等 级:论坛游民
帖 子:66
专家分:35
注 册:2009-4-11
收藏
得分:0 
谢谢3楼..
2009-11-04 13:49
快速回复:单链表选首领问题
数据加载中...
 
   



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

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