为了账号安全,请及时绑定邮箱和手机立即绑定

错哪了,各位前辈

/* Note:Your choice is C IDE */

#include "stdio.h"

#include<malloc.h>


struct weapon{

int atk;

int price;

struct weapon * next;

}


struct weapon*create()//空格不是问题

{

int a=0;

struct weapon *p1,*p2,*head;

p1=p2=(struct weapon*)malloc(sizeof(struct weapon));

scanf("%d%d",&p1->atk,&p1->price);

while(p1->atk!=0)

{

a++;

if(a==1)//==

head=p1;

 

else

p2->next=p1;

p2=p1;

p1=(struct weapon*)malloc(sizeof(struct weapon));

scanf("%d%d",&p1->atk,&p1->price);//指针用->

}

  p2->next=NULL;

return (head);

}

void main()

{

struct weapon *p;

p=create();

    printf("%d%d",p->atk,p->price);

}


正在回答

1 回答

  1. 结构体定义语句后面没有加分号

  2. scanf 和 printf 语句的数据输入之间没有加分隔符

  3. 建立链表时头指针head要为NULL

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Linux C语言结构体
  • 参与学习       118198    人
  • 解答问题       162    个

C语言的深入,帮助小伙伴们进一步的理解C语言,赶紧看过来

进入课程

错哪了,各位前辈

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信