struct NODE
{ int num; truct NODE *next;
};
main( )
{ struct NODE 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;
printf("%d\n",sum);
}
c语言的题目,需要的是过程
答案:2 悬赏:70 手机版
解决时间 2021-05-06 09:51
- 提问者网友:树红树绿
- 2021-05-05 22:24
最佳答案
- 五星知识达人网友:不想翻身的咸鱼
- 2021-05-05 22:31
构造了一个循环链表,其中q->next就是s[0],r->next->next就是q->next就是s[0],结果就是1+1=2
全部回答
- 1楼网友:廢物販賣機
- 2021-05-05 22:37
#include<stdio.h>
struct NODE
{ int num; struct NODE *next;
};
main( )
{ struct NODE s[3]={{1, '\0'},{2, '\0'},{3, '\0'}},*p,*q,*r;
int sum=0;
s[0].next=s+1; //s[0].next=s[1]
s[1].next=s+2; //s[1].next=s[2]
s[2].next=s; //s[2].next=s[0]
p=s; //p=s[0]
q=p->next; //q=s[0].next=s[1]
r=q->next; //r=s[1].next=s[2]
sum +=q->next->num; //sum=s[2].num=3(q->next等于s[1].next=s[2])
sum +=r->next->next->num;//sum=3+s[1].num=3+2=5(r->next->next等于s[2].next->next等于s[0].next=s[1])
printf("%d\n",sum); //结果为5
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯