当前位置:编程学习 > C/C++ >>

C语言中怎么判定结构体数组中的某项元素为空

给了结构数组5的长度,但只存了3条信息.

struct book   //图书信息
{
 char id[10];
 char name[20];
 char author[20];
 float price;
}BOOK[5]={{"NO1","诛仙","萧鼎",98.8f},
 {"NO2","佣兵天下","说不得易做图",88.8f},
 {"NO3","猛龙过江","骷髅精灵",78.8f}};

在后面有用BOOK[i]=BOOK[i+1]的方式删除了一条信息.  现在的数组中下标为 2,3,4的元素都没有信息. 该怎么用if判断下标为2,3,4的元素中有没有信息呢....

 

本人刚学C几天..也是学的第一门编程语言...发现实在伤脑袋呀..

追问:我是想用判断下标为X的元素中信息是否为空,如果不为空就运行后面的printf    . 为空就不管了...而结构体数组只能用一个吧...  我的问题就是怎么写IF后面的条件....  试了下一楼说的方法. 还不行不通呀.
答案:
如果删除某条信息,这条信息后面的信息都往前整不留空隙,那用个变量保存数组现存几条信息即可,在添加删除时维护此变量。
其实系统有个代表空的判断NULL,if(book[i+1]->name=NULL||book[i+1]->id==NULL)//这种
还可以用你定义类型的int用0char和字符串用""来判断

上一个:C语言 FatMouse' Trade问题,改错,有点难
下一个:C语言编程!!!羊,狼,白菜,过河方法~!

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,