for循环为什么跳不出的。各位学长



```c
{
//    LinkNode *head,*p,*s;

    int n; 
    int j;
     DataType data;
    p=head=(LinkNode*)malloc(sizeof(LinkNode));//创建头结点
    head->next=NULL;
    printf("请输入员工的数量:");
    scanf("%d",&n);
    printf("建立员工通讯录:\n");    
    //i = n;
    for(j=1;j<=n;j++)
    {
        printf("请输入第%d个员工信息",j);
        s=(LinkNode *)malloc(sizeof(LinkNode));//新建的结点
        printf("员工编号:");
        scanf("%s",data.num);
        printf("员工姓名:");
        scanf("%s",data.name);
         printf("办公室电话号码:");
         scanf("%s",data.phone);
         printf("员工手机号码:");
         scanf("%s",data.call) ;
         s->next=NULL;
         s->prior=p;
         p->next=s;
         p=s;
     } 
     p->next=NULL;
     printf("信息输入成功\n");
     return  head;
 } 

```

打印你的输入的n看看到底是多少。数值正确的情况下还有跳不出的情况下是不是一直打印你for循环里面内容,如果进入for循环打印一会就不打印了卡住了,说明指针调用出现问题程序卡死也不会跳出。原因会很多,通过这种方法排查。