##c语言,循环单链表的创建和输出操作,程序不报错但是没有运行结果
```c
#include<stdio.h>
#include<malloc.h>
typedef int ElemType;
typedef struct clinklist
{
int data;
struct clinklist *next;
}clinklist;
void InitList(clinklist *&L)
{
L=(clinklist *)malloc(sizeof(clinklist));
L->next=L;
}
void CreatList(clinklist *L,int a[],int n)
{
clinklist *r,*s;
L=(clinklist *)malloc(sizeof(clinklist));
L->next=NULL;
r=L;
for(int i=0;i<n;i++)
{
s=(clinklist *)malloc(sizeof(clinklist));
s->data=a[i];
r->next=s;
r=s;
}
r->next=L;
}
void DispList(clinklist *L)
{
clinklist *p=L->next;
while(p!=L)
{
printf("%c",p->data);
p=p->next;
}
}
int main()
{
clinklist *L;
int a[5];
printf("(1)初始化单链表\n");
InitList(L);
printf("(2)请输入五个元素\n");
for(int i=0;i<5;i++)
{
scanf("%c",&a[i]);
}
printf("创建循环单链表\n");
CreatList(L,a,5);
printf("输出循环单链表\n");
DispList(L);
}
![img](https://img-mid.csdnimg.cn/release/static/image/mid/ask/461892625176124.png "#left")