问题
单项选择题
有以下程序
#include<stdlib.h>
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\n",p->num+q->next->num);
程序运行后的输出结果是
A.10
B.20
C.30
D.40
答案
参考答案:D
解析: 该题中考查的是简单的单链表,下图就是赋完值后的示意图:容易看到p->num=10,而 q->next就是r,所以q->next->num=30,故答案为40。
[*]