以下程序运行后的输出结果是______。 struct NODE {int hum;struct NODE *next; } ; main() {structNODE s[3]={{1,’\0’},{2,’\0’},{3,’\0’}}, *p, *q

admin2010-12-10  62

问题 以下程序运行后的输出结果是______。
struct NODE
{int hum;struct NODE *next;
}  ;
main()
{structNODE s[3]={{1,’\0’},{2,’\0’},{3,’\0’}},  *p,  *q, *r;
int sum=0;
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;

选项 A、 5

答案

解析  程序通过语句“s[0]next=s+1;s[1].next=s+2;s[2].next=s;”将结构体变量s中各结点连接成了一个循环链表,即最后一个结点的指针域指向了头结点,整个链表形成了一个环,并通过语句“p=s;q=p->next;r=q->next;”将结构体指针变量p、q、r指向了各结点。
转载请注明原文地址:https://kaotiyun.com/show/H6Pp777K
0

最新回复(0)