我正在做一个项目,用于显示一个足球冠军的表格。我正在努力的部分是通过输入一个俱乐部的名字来删除他。例如,我有以下记录。
struct soccer_table_properties
{
char name[LENGTH];
int gscored;
int gconceded;
int points;
};
如果我输入俱乐部的名字来删除它 我也会删除他的积分,进球和失球,但我不明白。请您帮帮我,好吗?
对于删除部分,我试过这个实现,但是不行。
do {
printf("Enter the club name: \n");
scanf("%s", club[i].name);
for (j = 0; j < i; j++) {
res = strcmp(club[j].name, club[i].name);
if (res == 0){
true = 1;
strcpy(club[j].name, 0);
i--;
}
}
if (true == 0) {
printf("wrong number \n");
}
} while (true == 0);
我猜你使用的是一个数组结构.所以要删除一个元素,你必须把所有的元素移到元素的右边,即在元素之后把所有的元素左移.否则,如果让它变成0来代表删除,那么它应该是好的.在代码中使用 "0".