谁能告诉我这段代码都是干什么用的最好详细点谢谢
void search(NODE *head){
char name[20];
int i,k=0,j=0;
int n;
int q=0;
int ii;
printf("请输入姓名关键字:");
getchar();
gets(name);
puts("请稍候,正在查找...\n");
n=strlen(name);
while(head!=NULL)
{
for(i=0;head->name[i]!='\0';i++)
{
if(head->name[i]==name[k])
{
j++;
if(j==n)
{
printf("%3d号 %20s \n评委评分为:\n",head->num,head->name);
for(ii=0;ii<9;ii++)
{
printf("%6.2f ",head->score[ii]);
}
printf("\n");
break;
}
if(head->name[i+1]!=name[++k])
{
j=0;
k=0;
}
}
}
if(head->name[i]!=name[k])
printf("无此选手信息!\n");
head=head->next;
j=0,k=0;
}
return;
}