Neymar_code 2016-10-10 12:22 采纳率: 0%
浏览 961

C语言线性链表建立问题

编译通过,输入数据就崩了。代码如下。
#include
#include

typedef int ElementType;
typedef struct Node *PtrToNode;
struct Node {
ElementType Data;
PtrToNode Next;
};
typedef PtrToNode List;

List Read()
{
List L,p;
p = L = (List)malloc(sizeof(struct Node));
int i,size;
scanf("%d",&size);
if(size<=0){
printf("size is error!");
exit(0);
}
for( i=1 ; i<=size ; i++){
p = p->Next;
p = (List)malloc(sizeof(struct Node));
scanf("%d",&(p->Data));
}
p->Next = NULL;
return L;
}
void Print( List L )
{
List p;
p = L->Next;
while(p!=NULL){
printf("%d",p->Data);
p = p->Next;
}
}
//List Merge( List L1, List L2 );

int main()
{
List L1, L2, L;
L1 = Read();
// L2 = Read();
// L = Merge(L1, L2);
Print(L1);
// Print(L1);
// Print(L2);
return 0;
}

  • 写回答

1条回答

  • 看得到你的人头 2016-10-11 01:07
    关注

    你把read的中的函数改一下试试

     List Read()
    {
        List L,p,p1;
        p = L = (List)malloc(sizeof(struct Node));
        int i,size;
        scanf("%d",&size);
        if(size<=0)
        {
            printf("size is error!");
            exit(0);
        }
        for( i=1 ; i<=size ; i++)
        {
            p1 = (List)malloc(sizeof(struct Node));
            p->Next=p1;
            scanf("%d",&(p1->Data));
            p=p1;
        }
        p->Next = NULL;
        return L;
    } 
    
    评论

报告相同问题?

悬赏问题

  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?
  • ¥15 求daily translation(DT)偏差订正方法的代码
  • ¥15 js调用html页面需要隐藏某个按钮
  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误
  • ¥15 一道python难题3
  • ¥15 牛顿斯科特系数表表示