如何对结构体体数组赋空值?

比如在一维数组a[20中]可以通过a[20]={‘\0’}使之为空操作(空值),那怎样在结构体数组中做类似的操作呢,使结构体中的全部成员都是空值?不要用结构体指针的方法,是在结构体数组中,望高手解答,谢谢。
简单的地说,我的意思是如何清空结构体数组中的某个元素的数据??如已定义结构体
struct data
{
long number;
char name[25];
char sex;
float score;
} student[20];
如何清空student[18]中的数据??

第1个回答  2015-09-14
例如:
char a[10] = "123"; /*正确,在定义的时候初始化*/
char a[10];
a = "123"; /*错误,不能用“=”直接为字符数组赋值*/
strcpy(a, "123"); /*正确,使用strcpy函数复制字符串*/
所以要对game[0][0].cpart赋值应该用strcpy(game[0][0].cpart, "123");才对。
注意要使用strcpy函数要用#include <string.h>包含string.h头文件。
第2个回答  推荐于2018-04-21
memset(&student[18],0, sizeof(struct data));

memset 第一个参数是地址, 第二个参数填0就表示对该地址开始的数据清0,第3个参数是大小本回答被提问者和网友采纳
第3个回答  2011-06-11
这样就好了,,,
int i;
int m=stu[0].sx;
int e;
for(i=1;i<=10;i++)
{
if(stu[i].sx>m)
m=stu[i].sx; //修改处
else
{
m=m; //修改处,当然你可以取消该代码
}
}
e=m;//修改处
printf("数学最高分是:%d",e);
}