已知:structst{intn;structst*next;};staticstructsta[3]={1,&a[1],3,&a[2],5,&a[0]},*p;如果下述语句的显示是2,则对p的赋值是()printf("%d",++(p->next->n));
举一反三
- 已知: struct st { int n; struct st *next; }; static struct st a[3]={1,&a[1],3,&a[2],5,&a[0]},*p; 如果下述语句的显示是 2,则对p的赋值是( ) printf("%d",++(p->next->n));
- 以下程序运行后的输出结果是 ________ struct NODE { int num; struct NODE *next; } main() { struct NODE s[3], *p, *q, *r; int sum=0; s[0].num=1; s[1].num=2; s[2].num=3; s[0].next=s+1; s[1].next=s+2; s[2].next=s; p=s; q=p->next; r=q->next; sum+=q->next->num; sum+=r->next->next->num; printf("%d", sum); }
- 【单选题】在双向链表中删除*p结点之后的一个结点的操作是 。 A. p->next=p->next->next; p->next->next->prior=p; B. p->next->prior=p; p->next=p->next->next; C. p->next=p->next->next; p->next->prior=p; D. p->next->next=p->next; p->next->prior=p;
- 已知L是带头节点的单链表,节点p不是头节点(第一个节点),也不是尾节点,删除节点p的直接后继节点的语句序列是() A: p=p->next;free(p); B: p->next=p;free(p->next); C: p->next=p->next->next;free(p->next); D: p=p->next->next;free(p->next);
- 在单链表中删除p所指结点的后继结点的语句是( )。 A: p->;next=p->;next->;next; B: p->;next=NULL; C: p=p->;next; D: p=p->;next->;next;