c语言链表问题,猴子选大王,哪位大神能帮我看看

Python012

c语言链表问题,猴子选大王,哪位大神能帮我看看,第1张

#include <stdio.h>

#include <stdlib.h>

typedef int status

typedef int ElemType

typedef struct NODE_MONKY

{

ElemType serial_number

struct NODE_MONKY *next

}LNode, *LinkList

void Build(LinkList L,int n){

LinkList p,q

p = L

for(int i=0i<ni++)

{

printf("%d\n",i+1)

q = (LinkList)malloc(sizeof(LNode))

q -> serial_number = i+1

q -> next = NULL

p -> next = q

p = q

}

p -> next = L->next

}

void Print(LinkList L,int x)//计算单链表的长度,然后输出单链表

{

    LinkList p

    p=L->next

    while(x--)

    {

        printf("%d ",p->serial_number)

        p=p->next

    }

}

void Delete(LinkList L,int x,int y)//删除值为x的结点

{

    LinkList p,q

p=L->next

for (int i = 1 i < y i++)

{

for(int j = 2 j < x  j++)

{

p = p->next

printf("serial_number change = %d\n",p->serial_number)

}

q = p->next

        p->next = q->next

        printf("delete %d success\n",q->serial_number)

        printf("p->serial_number = %d\n",p->serial_number)

        free(q)

        q = NULL

        p = p->next

        printf("p->serial_number now = %d\n",p->serial_number)

}

}

int main()

{

int m,n

LinkList L,p,q

L = (LinkList)malloc(sizeof(LNode))

L -> next = NULL

L -> serial_number = 1

printf("please input the number of mounky.\n")

scanf("%d",&n)

Build(L,n)

Print(L,n)

printf("Please input the number M\n")

scanf("%d",&m)

Delete(L,m,n)

}

#include<stdio.h>

#include<stdlib.h>

main()

{ int a[50]

int i,j,M,N,t=0

printf("input two number.\n")

scanf("%d %d",&N,&M)

for(i=0i<Ni++)

a[i]=i+1

for(j=1,i=0j++,i++)

{

if(i==N)i=0

if(a[i]==0){j--continue}

if(j%M==0){a[i]=0t++}

if(N-t==1)break

}

for(i=0i<Ni++)

if(a[i]!=0) printf("猴王是第%d个.\n",a[i])

system("pause")

}

试试...