C语言如何建立一个列表,编程怎么编,举例说一下,谢谢啦

 我来答
前星光0kF
推荐于2017-11-25 · 超过36用户采纳过TA的回答
知道答主
回答量:155
采纳率:0%
帮助的人:91万
展开全部
首先定义一个链表。

struct node
{
int id;
struct node * next;

};

接下来写一些操作的函数(插入,删除等等)。

插入函数:

struct node* insert(struct node* pNode, int iTemp)
{
//判断 pNode 是否为空。
if(pNode==NULL)
{
//这个节点是空,返回错误。
return NULL;

}
// 创建一个新的节点。

struct node* tempNode = (struct node*)malloc(sizeof(struct node));
tempNode->id= iTemp;
if(pNode->next == NULL)
{

pNode->next = tempNode;
tempNode->next = NULL;

}else
{
struct node * pNext = pNode->next;
pNode->next = tempNode;
tempNode->next = pNext;

}

return tempNode;

}

int main()
{
struct node* head = (struct node*)malloc(sizeof(struct node));
head->id = 0;
head->next = NULL;
struct node * ptemp;
ptemp = head;

for( int i=1; i<10; i++)
{
struct node* temp = insert(ptemp,i);
ptemp = temp;

}

return 0;

}
更多追问追答
追问
那怎么知道一个列表的长度呢,比如说一个长度为10的列表,最好详细一点
追答
从链表的头开始,计算。

int LengthOf(struct node * pHead)
{
int i =0;
struct node* head = pHead;

while(head!=NULL)
{
head = head->next; //

i++;

}

return i;

}
_whales
2013-01-13 · TA获得超过2281个赞
知道大有可为答主
回答量:1814
采纳率:85%
帮助的人:538万
展开全部
VC ,cListCtrl
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式