私はこの構造体を持っています:
typedef struct data student, *pstudent;
struct data{
char name[50];
int value;
pstudent next;
};
そして、並べ替えられていないリンクされたリストで最も頻繁に生徒を見つける関数が必要です。例: "John - 値 3" "David - 値 2" "Andrew - 値 4" "John - 値 9" この場合、関数は "John" を返します。
これまでのコード:
void count(pstudent p)
{
pstudent ptr1, ptr2;
ptr1 = p;
while(ptr1 != NULL && ptr1->next!=NULL)
{
ptr2 = ptr1;
while(ptr2->next != NULL)
{
if(strcmp(ptr1->name,ptr2->next->name)==0)
{
printf("Found %s, %s", ptr1->name,ptr2->name);
}
}
ptr1 = ptr1->next;
}
}
どうすればこれを機能させることができますか?助けてくれてありがとう。