struct ss { int info; struct ss *link;}x,y,z; 且已建立链表:x.link=&y; y.link=&z;请写出删除结点y的赋值语句 ,这题为什么我写x.link=&z;是错的,请给出正确答案、 。
时间: 2023-12-03 08:45:14 浏览: 95
要删除结点y,需要将x结点的link指向z结点。赋值语句应为:
```C++
x.link = &z;
```
将x.link指向z结点后,y结点便不再被链表所连接,从而实现删除的效果。
如果你写成了x.link = &z,则会直接将链表的头结点改为z结点,导致y结点无法被访问,从而出现错误。
相关问题
struct ss { int info; struct ss *link;}x,y,z; 且已建立链表:x.link=&y; y.link=&z;请写出删除结点y的赋值语句 。
删除链表中的某个结点,需要先找到该结点的前驱结点,然后修改其指针域。
在本题中,要删除结点y,需要先找到结点x,然后将x的指针域指向z,即可删除y。
赋值语句如下:
```
x.link = &z;
```
设有以下定义: struct ss { int info; struct ss *link;}x,y,z; 且已建立链表:x.link=&y; y.link=&z;请写出删除结点y的赋值语句 。
要删除结点y,需要将x结点的link指向z结点,即:
```
x.link = &z;
```
这样就将y结点从链表中删除了。
阅读全文