已有定义如下:struct node{ int data;struct node *next;} *p;以下语句调用malloc函数填空。使指针p指向一个具有struct node类型的动态存储空间。p = (struct node *)malloc(【 】);
举一反三
- 设有以下定义: struct node { int data; struct node *next; }*p; 则以下的语句中正确的是()。 A: p=malloc(sizeof(struct node)) B: p=(struct node *)malloc(sizeof(struct node)) C: *p=(struct node *)malloc(4) D: p=(struct node )malloc(sizeof(struct node))
- 中国大学MOOC: 对于如下语句struct node{ int id; struct node *next;}*p;p=(struct node*)malloc(sizeof(struct node)*10);如下说法正确的是
- 有以下程序 #include struct NODE {int num; struct NODE *next; } main() {struct NODE *p,*q,*r; p=(struct NODE *)malloc(sizeof(struct NODE)); q=(struct NODE *)malloc(sizeof(struct NODE)); r=(struct NODE *)malloc(sizeof(struct NODE)); p->num=10;q->num=20;r->num=30; p->next=q;q->next=r; printf("%d ",p->num+q->next->num); } 程序运行后的输出结果是( )
- 关于如下结构体struct node{ int id; struct node *next;};说法不正确的是 A: struct node为数据类型 B: struct node可以用于定义链表 C: 结构体标识符node可以省略 D: next 指向下一个结构体变量
- 对于如下语句struct node{ int id; struct node *next;}*p;p=(struct node*)malloc(sizeof(struct node)*10);如下说法正确的是 A: p.id=10实现给首节点的id成员赋值 B: *p.id=10实现给首节点的id成员赋值 C: (*p).id=10实现给首节点的id成员赋值 D: p=>id=10实现给首节点的id成员赋值