| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 787 人关注过本帖
标题:我写了个约瑟夫环的算法,结果编译的时候漏洞百出,求大哥们帮忙看下
只看楼主 加入收藏
oxangen
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2010-3-31
结帖率:0
收藏
已结贴  问题点数:20 回复次数:4 
我写了个约瑟夫环的算法,结果编译的时候漏洞百出,求大哥们帮忙看下
#include<iostream>
using namespace std;
#include<malloc.h>
/*#define LEN sizeof(struct Node) */
Typedef struct Node
{
    int data;
    struct Node *next;
} *Pointer;
void CreateList(Pointer &Node,int k)
Pointer Find(Pointer &Node,int n)
void Input(m,n,k)
int main()
{
    int m,n,k;
    new Node Joseph;
    void Input(m,n,k);
    void CreateList(Joseph &head,int m);
    int h=0,j=0,o=0;
    new Node start=Find(Joseph &head ,int n);
    p=(struct people *) malloc(LEN);
    if (k==0)
        {
            printf("输入错误,重新输入\n");
            void Input(m,n,k);
        }
    else if(k==1)
        {
            printf("出队顺序为:\n")
            for(n=n+1;n<=k;n++) {printf("%d\t",n);}
            for(int i=1;i<=n;i++) {printf("%d\t",j);]
        }
    else
        while (o<m+1)
            {
                while (j<k)
                    {
                        if(h==n-1)
                        {
                            printf("出队顺序为n")
                            printf("%d\t",start->start->data);
                            new Node Temp=start->next;
                            start->next=start->next->next;
                            delete(Temp);
                            h=1;o++;
                        }
                        else {start=start->next;h++;}
                        j++;
                    }
                start=head;h++;
            }
return 0;
}
void Input(int m,int n,int k)
{
    printf("输入玩家数\n");
    scanf("%d",&m);
    printf("从第几个人开始\n");
    scanf("%d",&n);
    printf("第几个人出队\n");
    scanf("%d",&k);
}
void CreateList(Joseph &head,int m)
{
    head=new Node; p=head; int j;
    for(j=1;j<m;j++)
        {
            q=new Node;
            q->data=j;
            p->next=q;
            p=q;
        }
}
Pointer Find(Joseph &head,int n)
{
    p=head;  j=1;
    while ((p->next)&&(j<n))
        {    p=p->next; j++;    }
    if(n==j) reture p;
    else reture(NULL);
}
看数据结构的类C写的,错了很多,请大哥们帮忙看看
搜索更多相关主题的帖子: 算法 约瑟夫 编译 结果 
2010-03-31 13:54
寒风中的细雨
Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17
等 级:贵宾
威 望:66
帖 子:1710
专家分:8645
注 册:2009-9-15
收藏
得分:5 
程序很乱 错误地方很多
建议重新 改进算法编个
2010-04-05 09:02
编程小呆
Rank: 2
来 自:西电
等 级:论坛游民
帖 子:31
专家分:23
注 册:2010-3-20
收藏
得分:5 
真的,哥们,这段代码确实很乱的,很多低级错误,比如缺少";"之类的,还是建议重新写,前段时间我们上机刚写了一次要我的可以参考一下,不过建议自己写
2010-04-06 21:33
asdjc
Rank: 6Rank: 6
来 自:武汉
等 级:侠之大者
威 望:7
帖 子:98
专家分:487
注 册:2010-1-22
收藏
得分:5 
错误太多了,感觉你c++的基础不够,最好学好c++基础后再编程,磨刀不误砍柴工嘛!!!
2010-04-09 14:11
AI恒子
Rank: 2
等 级:论坛游民
帖 子:8
专家分:12
注 册:2010-4-8
收藏
得分:5 
你改改在发吧~  我也需要约瑟夫环的算法~    谢谢~
2010-04-09 22:26
快速回复:我写了个约瑟夫环的算法,结果编译的时候漏洞百出,求大哥们帮忙看下
数据加载中...
 
   



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

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