设计一个计算单链表(链表带头结点)中结点个数的算法,并依此输出链表中的元素的值

如题所述

第1个回答  推荐于2017-11-25
#include<stdio.h>
#include<stdlib.h>
typedef struct node
{
int data;
struct node *next;
}node;
void count(node* l)//计算节点个数,输出所有值
{
int n = 0;
node* p = l->next;
while(p)
{
printf("%d ",p->data);
p = p->next;
n++;
}
printf("\n%d\n",n);
}
int main()
{
int e;
//头节点
node *head,*p,*q;
head = (node*)malloc(sizeof(node));
head->next = NULL;
p = head;
printf("输入元素,回车结束:");
do{
scanf("%d",&e);
q = (node*)malloc(sizeof(node));
q->data = e;
q->next = NULL;
p->next = q;
p = q;
}while(getchar()!='\n');
count(head);
return 0;
}本回答被提问者采纳
第2个回答  2013-04-04
我无语了,还有比这更简单的功能么,学习你就看看数据结构呗,上网多浪费时间追问

你会不代表别人就会 没你那么聪明

相似回答