for (j = 1; j < x; j++)
{
for (n = 1; n < x; n++)
{
if (strcmp(info[n - 1].lname, info[n].lname) > 0)
{
strcpy(t, info[n - 1].lname);
strcpy(info[n - 1].lname, info[n].lname);
strcpy(info[n].lname, t);
}
}
}
for (j=0; j < x; j++)
{
printf("\n-------------------------------------------------------------------------\n");
printf("ID number: %d", info[j].ID);
printf("\nName: %s %s", info[j].fname, info[j].lname);
printf("\nClass: %d%s", info[j].form, info[j].classname);
printf("\nSymptons: %s", info[j].symptom);
printf("\nPrescription: %s", info[j].symadmin);
printf("\n-------------------------------------------------------------------------\n");
}
美好的一天,我一直在試圖讓這個工作很長一段時間。我想按姓氏排序字符串數組。事情是,姓氏是排序的,但伴隨的數據,如ID,fname,類等不是用姓氏排序的。即只有姓氏改變位置。如何對C中數組中的字符串進行排序?
我該如何解決這個問題? 在此先感謝。
編輯:我可以看到實現,而不是單詞,也許。
當您更改姓氏時,您還需要將其他條目更改爲相應的姓氏。 – ameyCU
@ameyCU我該如何去做這個先生? – user4630535
如果你的結構中有數組而不是指針,那麼你可以直接將結構變量賦值給另一個結構變量,並且交換它們(但是在指針的情況下,你需要手動執行所有的** _)。 – ameyCU