{
char stu_name [20];
int stu_score;
螺柱* s; / *指针s是保存新的节点地址* /
如果((s =(stud *)malloc(sizeof(stud)))== NULL)
{
printf(“分配内存空间失败!”);
退出(0);
}
printf(“请输入您要插入的人的姓名: ”);
scanf(“%s”,stu_name);
printf(“请输入您要插入的人的分数: ”);
scanf(“%d”和stu_score);
strcpy(s->名称,stu_name); / *将指针stuname指向的数组元素复制到新节点的数据字段中* /
s->分数= stu_score;
s->链接= p->链接; / *将新节点的链接域指向原始p节点的后继节点* /
p->链接= s; / *节点的链接域指向新节点* /
返回SLIST_RETURN_OK;
}
SListReturn销毁(螺柱*头)
{
stud * tmp,* next;
tmp = head;
int i = 0;
while(tmp!= NULL)
{
next = tmp->链接;

tmp->链接= NULL;
免费(tmp);
tmp =下一个;
i ++;
printf(“第一个%d版本\ n”,i);
}
返回SLIST_RETURN_OK;
}
SList返回打印(螺柱*头)
{
螺柱* tmp = head->链接;
while(tmp!= NULL)
{
printf(“%s分数是%d \ n”,tmp->名称,tmp->分数);
tmp = tmp->链接;
}
返回SLIST_RETURN_OK;
}
void main()
{
int编号; / *保存数字的变量* /
char fname [10]; / *保存您要查找的人的姓名* /
螺柱*头,*搜索点; / * head是一个指针c 链表,用于保存单链接列表的head节点的地址* /
number = N;
head = creat(数字); / *将新创建的单链接列表的标题地址分配给head * /
printf(“请输入您要查找的人的姓名: ”);
scanf(“%s”,fname);
searchpoint =搜索(head,fname); / *查找并返回找到的节点指针* /
插入(搜索点); / *调用插入函数* /
打印(头);
破坏(头);
// ASSERT_REPORT(打印(标题)== SLIST_RETURN_OK);
// ASSERT_REPORT(破坏(头)== SLIST_RETURN_OK);
}
运行结果为:

如果图片无法打开,请在此处添加文字说明.
请输入第一个人的姓名: rewq
请输入第一人称分数: 123
请输入第二个人的姓名: fdsa
请输入第二人称分数: 456
请输入第三人的姓名: vcxz
请输入第三人的得分: 789
请输入您要查找的人的姓名: fdsa
请输入您要插入的人的名字: ghjk
请输入您要插入的人的分数: 369
rewq得分是123
fdsa得分是456
ghjk得分是369
vcxz得分是789
第一版
第二次发布
第三版
第4版
第五版
按任意键继续
对代码的关键部分进行了注释解释,因此在这里我不会一一解释,仅在几个值得注意的地方,即实现destroy()函数,可能会有很在进行操作. 这里不是很熟悉,因为没有直观显示该版本的成功之处. 即使编写正确,我们仍然不确定. 这时,我们必须自己添加一些内容. 因此,在这里,我们专门教给读者一种通过i ++ ;、 printf(“%d release time \ n”,i);执行简单验证的方法;语句以了解通过打印释放了多少个节点以及我们创建的节点可以比较点数. 在此代码中,我们最初创建了4个节点(注意: 包括头节点),然后插入了一个节点,因此我们总是需要释放5个节点,查看打印出来的结果. 因此,我们知道我们的函数已正确实现,并且当然,有很多验证方法. 这只是一个简单的方法.
您不能在不玩它的情况下就写它,所以现在,让我们在这里停止下一个博客. 由于我的水平有限,博客是正确或错误的是不可避免的. 我衷心希望读者批评和纠正我. 同时,也欢迎读者一起讨论相关内容,如果您愿意交流,请留下宝贵的意见.
Linux操作系统文章主题: linux操作系统的详细说明(不再难于理解linux)
C语言相关文章: C语言教程
Linux相关文章: linux教程
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-168476-2.html
那巴萨尔就活过来