链表简单分解

/*

链表的简单分解

*/

#include <stdio.h>

#include <windows.h>

#pragma warning(disable:4996)

//创建结构体

struct num

{

char name[10];//记录姓名

int age;//记录年龄

struct num *next;//如果是最后一个结构,它指向NULL.如果不是,它指向下一个结构的地址

};

int main(void)

{

int i;//循环变量

struct num *head = NULL;//指向第一个结构的地址

struct num ch[3];//结构指针

head = ch;//将head指向第一个结构的地址

//循环遍历输入信息

for (i = 0; i < 3; i++)

{

printf("请输入员工姓名:\n");

scanf("%s", &ch[i].name);

printf("请输入员工年龄:\n");

scanf("%d", &ch[i].age);

}

//循环遍历操作链表的节点

for (i = 0; i < 3; i++)

{

if (i == 2)//一共有三个节点,如果此时i==2代表是第三个节点(也就是最后一个节点),那么最后一个节点的(也就是最后一个结构).next就指向NULL

{

ch[i].next = NULL;

}

else//只要不是最后一个节点(也就是最后一个结构),那么.next就指向下一个节点的地址

{

ch[i].next = &ch[i + 1];

}

}

//ch[0].next = &ch[1];

//ch[1].next = &ch[2];

//ch[2].next = NULL;

//循环遍历打印信息

for (i = 0; i < 3; i++)

{

printf("%s\t%d\n", (head + i)->name, (head + i)->age);//使用head指向的地址来打印信息

}

system("pause");

return 0;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

完美教父

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值