标题:指针传入传出问题
只看楼主
upa
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2018-7-21
结帖率:0
已结贴  问题点数:20 回复次数:2 
指针传入传出问题
#include<iostream>
using namespace std;

struct list
{
    list *next;
    int data;
    int chishu;
};

void jipaixu(list *d,int b)
{
    list *q;
    list *w;
    int x;
    x=b%10;
    w=d;
    printf("*******");
    for(int i=0;i<d->chishu;i++)
    {
        w=w->next;
    }
    printf("*******");
    int c;
    q=(struct list*)malloc(sizeof(struct list));
    q->data=b;
    q->next=NULL;
    w->next=q;
    w=w->next;
    printf("%d",w->data);
   
}


int main()
{    int a,b,c,d;
    list e[9];
    list k[9];
    list *l=&e[2];
    //l=l->next;
//l=l->next;
    //e[2]=(struct list*)malloc(sizeof(struct list));

    //k[9]=e[9];
    printf("请输入数据,输入1000结束");
    while(1)
    {
        scanf("%d",&a);//输入102
        if(a==1000)
        {   
            break;
        }
        else
        {
            b=a%10;
            jipaixu(&k[b],a);
        //    l=l->next;     不屏蔽这个就停止工作
            printf("%d",l->data);
            k[b].chishu++;
        }

        printf("******");

    }
    printf("%d",e[2].data);
    return 0;
}

我想做一个数组指针,就是每个a[i]里面的数据是用链表连接起来的。我原意是建立链接型的指针,用l指向数组k,因为k[2]的头是空的,所以我写了l=l->next(上面我屏蔽了这条),但是停止工作了,想着是不是我创建链表没有传出指针,求大神解答,怎么改??
搜索更多相关主题的帖子: 指针 list next int printf 
2018-07-21 21:57
yangfrancis
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:贵宾
威 望:141
帖 子:1510
专家分:7661
注 册:2014-5-19
得分:10 
哪部分在排序,什么方法排序都没做备注,看起来好麻烦。
2018-07-23 08:15
Jonny0201
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:52
帖 子:488
专家分:2603
注 册:2016-11-7
得分:10 
chishu?
是次数吧? 这拼音, 看了我好久
jipaixu 是基数排序吗? 你这个也不是基数排序啊, 就是普通的链表相连
你在 jipaixu 这个函数里面已经让插入后的 w = w->next, 如果你那里不注释, 那么 w = w->next, 最后 w 等于 NULL, 下面肯定是执行不下去的
2018-07-24 22:03



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-488744-1-1.html




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

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