void delestu()
{
int j,n;
char name[20];
n=0;
printf("delete a student:\n");
printf("please input a name:\n");
scanf("%s",name);
for(j=0;j {
if(strcmp(stu[j].name,name))
{
for( ;j
stu[j]=stu[j+1];
}
n++;
i--;
break;
}
}
if(n==0)
{
printf("there is no such a student.\n");
}
}
我想知道
if(strcmp(stu[j].name,name))
{
for( ;j
stu[j]=stu[j+1];
}
n++;
i--;
break;
}
的意思,我读半天都不太理解。总觉哪里怪怪的。
honglianqxw123 于 2012-02-08 08:32:51发表:
学习了,谢谢。
wskksau 于 2012-02-07 01:16:37发表:
2# pl_014
谢了……
pl_014 于 2012-02-06 06:55:53发表:
这个函数大概是实现删除数组中的一个项目,这段代码要和外面的for循环一起看,是寻找符合输入的名字的项目,然后把这个项目的后面的项目一个一个地向前移。不过我总觉得这段代码写得不好,尤其是把i作为全局变量。