红联Linux门户
Linux帮助

关于c语言的问题

发布时间:2012-02-06 02:35:46来源:红联作者:wskksau
程序断如下:
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;
}
的意思,我读半天都不太理解。总觉哪里怪怪的。
文章评论

共有 3 条评论

  1. honglianqxw123 于 2012-02-08 08:32:51发表:

    学习了,谢谢。

  2. wskksau 于 2012-02-07 01:16:37发表:

    2# pl_014


    谢了……

  3. pl_014 于 2012-02-06 06:55:53发表:

    这个函数大概是实现删除数组中的一个项目,这段代码要和外面的for循环一起看,是寻找符合输入的名字的项目,然后把这个项目的后面的项目一个一个地向前移。不过我总觉得这段代码写得不好,尤其是把i作为全局变量。