用c语言写出来的代码,可以通关
头歌上的作业
希望大家前程似锦,码字不易,点个小认同吧~
#include<stdio.h>
#include<stdlib.h>
typedef struct {
int no;
int key;
} elemty;
typedef struct link{
elemty data;
struct link *next;
} *list,linklist; //链表结构
list build(int n)
{
/*创建存储n个人编号及密码的循环链表!链表结构采用上述定义的linklist */
/* **********begint********** */
list head=(list)malloc(sizeof(linklist));
head->next=NULL;
list p=(list)malloc(sizeof(linklist));
head->next=p;
p->next=NULL;
for(int i=1;i<=n;i++){
scanf("%d",&p->data.no);
scanf("%d",&p->data.key);
if(i!=n){
list k=(list)malloc(sizeof(linklist));
p->next=k;
p=k;
k->next=NULL;
}
else if(i==n)p->next=head->next;
}
return(head);
/* **********end********** */
}
int main()
{
/* 要求采用循环链表完成!*/
/* **********begint********** */
int n;
int m;
scanf("%d",&n);
list head;
head=build(n);
scanf("%d",&m);
list q=head;
list h;
int i=0;
int r=0;
while(r!=n){
h=q;
q=q->next;
i++;
if(i==m){
r++;
printf("%d",q->data.no);
m=q->data.key;
h->next=q->next;
i=0;
q=h;
}
}
return 0;
/* **********end********** */
}
版权声明:本文为m0_73729221原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。