| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 989 人关注过本帖
标题:出现的这个错误怎么改啊unresolved external symbol _scllinser, 1 unreso ...
取消只看楼主 加入收藏
陈程1993319
Rank: 1
来 自:江西南昌
等 级:新手上路
帖 子:3
专家分:0
注 册:2013-10-12
结帖率:0
收藏
已结贴  问题点数:10 回复次数:2 
出现的这个错误怎么改啊unresolved external symbol _scllinser, 1 unresolved externals
头文件是gf.h
typedef struct node
{
    datatype data;
    struct node *next;
}sclnode;
void scllinitiate(sclnode **head)
{
    *head=(sclnode*)malloc(sizeof(sclnode));
    (*head)->next=*head;
}
int scllinsert(sclnode *head,int i,datatype x)
{
    sclnode *p,*q;
    int j;p=head->next;
    j=1;
    while(p!=head&&j<i-1)
    {
        p=p->next;
        j++;
    }
    if(j!=i-1&&i!=1)
    {
        printf("插入位置参数错误!");
        return 0;
    }
    q=(sclnode*)malloc(sizeof(sclnode));
    q->data=x;
    q->next=p->next;
    p->next=q;
    return 1;
}
int sclldelete(sclnode*head,int i,datatype*x)
{
    sclnode *p,*q;
    int j;
    p=head;
    j=0;
    while(p->next!=head&&j<i-1)
    {
        p->next;
        j++;
    }
    if(j!=i-1)
    {
        printf("删除位置参数错!");
        return 0;
    }
    q=p->next;
    p->next=p->next->next;
    *x=q->data;
    free(q);
    return 1;
}
int scllget(sclnode*head,int i,datatype *x)
{
    sclnode *p;
    int j;
    p=head;
    j=0;
    while(p->next!=head&&j<i)
    {
        p=p->next;
        j++;
    }
    if(j!=i)
    {
        printf("取元素位置参数错!");
        return 0;
    }
    *x=p->data;
    return 1;
}
int scllnotempty(sclnode*head)
{
    if(head->next==head)
        return 0;
    else return 1;
}
主函数d.h

#include<stdio.h>
#include<stdlib.h>
typedef struct
{
    int number;
    int cipher;
}datatype;
#include"gf.h"
void sclldeleteafter(sclnode*p)
{
    sclnode*q=p->next;
    p->next=p->next->next;
    free(q);
}
void jesephring(sclnode*head,int m)
{
    sclnode*pre,*curr;
    int i;
    pre=head;
    curr=head->next;
    while(scllnotempty(head)==1)
    {
        for(i=1;i<m;i++)
        {
            pre=curr;
            curr=curr->next;
            if(curr=head)
            {
                pre=curr;
                curr=curr->next;
            }
        }
        printf("%d    ",curr->data.number);
        m=curr->data.cipher;
        curr=curr->next;
        if(curr==head)
            curr=curr->next;
         sclldeleteafter(pre);
    }
}
void main(void)
{
    datatype test[7]={{1,3},{2,1},{3,7},{4,2},{5,4},{6,7},{7,4}};
    int n=7,m=20,i;
    sclnode*head;
    scllinitiate(&head);
    for(i=1;i<=n;i++)
        scllinser(head,i,test[i-1]);jesephring(head,m);
}
搜索更多相关主题的帖子: return 
2013-10-13 09:31
陈程1993319
Rank: 1
来 自:江西南昌
等 级:新手上路
帖 子:3
专家分:0
注 册:2013-10-12
收藏
得分:0 
终于找到问题了,但是居然得不到预期的结果,神啊救救我吧
2013-10-13 10:27
陈程1993319
Rank: 1
来 自:江西南昌
等 级:新手上路
帖 子:3
专家分:0
注 册:2013-10-12
收藏
得分:0 
回复 3楼 小小程序猿
本来的功能是七个人,一个人一个密码和排列序号,然后随机取一个数R从第一个人循环开始报数,排除报数R的那个人,然后取报数R的人的密码作为R,开始报数,一直到所有人被排除完为止,输出那些人的排列序号!
2013-11-03 17:02
快速回复:出现的这个错误怎么改啊unresolved external symbol _scllinser, 1 u ...
数据加载中...
 
   



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

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