69,382
社区成员
发帖
与我相关
我的任务
分享
#include<stdio.h>
#include<stdlib.h>
typedef int Elemtype;
typedef struct link
{
int elem;
struct link* next;
}link;
link * initLink()
{
link *p = (link *)malloc(sizeof(link));//创建一个头结点
if (!p)
exit(0);
link* temp = p;//声明一个指针指向头结点,用于遍历链表
//生成链表
for (int i = 1; i < 5; i++) {
link* a = (link*)malloc(sizeof(link));
if (!a)
exit(0);
a->elem = i;
a->next = NULL;
temp->next = a;
temp = temp->next;
}
return p;
}
//void bianli(link* p)
void bianli(link* phead)
{
if (!phead)
return;
//link* q = phead;
link* q = phead->next;
//while (q->next)
while (q)
{
//q = q->next;
printf("%d",q->elem);
q = q->next;
}
printf("\n");
}
int main()
{
link* p = initLink();
//bianli(&p); //visit
bianli(p); //visit
return 0;
}
#include<stdio.h>
#include<stdlib.h>
typedef int Elemtype;
typedef struct link
{
int elem;
struct link* next;
}link;
link * initLink()
{
link* p = (link*)malloc(sizeof(link));//创建一个头结点
link* temp = p;//声明一个指针指向头结点,用于遍历链表
//生成链表
for (int i = 1; i < 5; i++) {
link* a = (link*)malloc(sizeof(link));
a->elem = i;
a->next = NULL;
temp->next = a;
temp = a; // temp = temp->next;
}
return p;
}
void bianli(link* p)
{
link* q = p;
while (q->next)
{
q = q->next;
printf("%d ",q->elem);
}
printf("\n");
}
int main()
{
link* p = initLink();
bianli(p); //bianli(&p);
return 0;
}