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