帮忙看一段C语言程序。。跟结构体有关的,调试的时候说string!=NULL,求改错!!

#include<stdio.h>structstudent{charnum[5],name[10];ints[4];doubleave;}*add;voidreadre... #include<stdio.h>
struct student
{
char num[5],name[10];
int s[4];
double ave;
}*add;
void readrec(struct student *add)
{
int i,j;
for(i=0;i<3;i++)
{
gets(add[i].num);
gets(add[i].name);
add[i].ave=0;
for(j=0;j<4;j++)
{scanf("%d",&add[i].s[j]);add[i].ave+=add[i].s[j]/4.0;}
getchar();
}
}
void written(struct student *add)
{
int i,j;
for(i=0;i<3;i++)
{
printf("%s%s",(add+i)->name,(add+i)->num);
for(j=0;j<4;j++)
printf("%d",add[i].s[j]);
printf("%.1f\n",add[i].ave);
}
}
main()
{
readrec(add);
written(add);
}
展开
 我来答
七级狗
2011-08-08 · TA获得超过356个赞
知道答主
回答量:283
采纳率:0%
帮助的人:97.3万
展开全部
很明显add根本没有分配空间,怎么能使用呢。。。
匿名用户
2011-08-08
展开全部
没分配空间
追问
0.0嗯…………怎么改呢?@~@
追答
struct student
{
char num[5],name[10];
int s[4];
double ave;
}*add=(student *)malloc(sizeof(student));
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式