c语言结构体的问题

学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组中,请编写函数fun,它的功能是:函数返回指定学号的学生数据,指定的学号在主函数中输入。若没有找到指定... 学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组中,请编写函数fun,它的功能是:函数返回指定学号的学生数据,指定的学号在主函数中输入。若没有找到指定学号,在结构体变量中给学号置空串,给成绩置-1,作为函数值返回。(用于字符串比较的函数是strcmp)。这是2c上机题。我对答案不太明白。我希望各位c高手能帮我解释下要求编写部分,越详细越好!
typedef struct
{ char num[10];
int s;
}STREC;

STREC fun (STREC *a char *b )
{
int i;
STREC t={" ",-1};
for (i=0;i<N;i++)
{
if(strcmp(a[i].num,b)==0)
return a[i];
} return t;就给我解释清楚这个大括号里的内容就行!谢谢大家!
最后少个大括号},
能否给小弟解释下这个if(strcmp(a[i].num,b)==0) 的具体含义呢?这个最含糊了!
展开
 我来答
元宝趣学
2008-09-07 · TA获得超过1102个赞
知道小有建树答主
回答量:734
采纳率:100%
帮助的人:605万
展开全部
STREC fun (STREC *a char *b )
{
int i;
STREC t={" ",-1}; //在结构体变量中给学号置空串,给成绩置-1,
for (i=0;i<N;i++) //遍历
{
if(strcmp(a[i].num,b)==0) //如果找到则返回找到的内容
return a[i]; //返回找到的内容
}
return t;//若没有找到指定学号,在结构体变量中给学号置空串,给成绩置-1,作为函数值返回。
}
飘的心情
2008-09-07
知道答主
回答量:5
采纳率:0%
帮助的人:0
展开全部
STREC t={" ",-1}; //没有找到指定学号的情况,返回这个结构体

// 从已有的学生数据中匹配输入的学号,匹配上了(学号相等)返回这个结构体
for (i=0;i<N;i++)
{
if(strcmp(a[i].num,b)==0)
return a[i];
}

return t;//没有找到指定学号的情况,返回这个结构体
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
彤纲毅hE
2008-09-07
知道答主
回答量:31
采纳率:0%
帮助的人:0
展开全部
意思是说,若学号的字符串的长度为0(学号置空串),就返回这个结构体变量
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
卢怜阳衡芬
2019-01-03 · TA获得超过3万个赞
知道大有可为答主
回答量:1.2万
采纳率:27%
帮助的人:667万
展开全部
申明一个数据直接写成Elemtype
head,tail;需要指针可以Elemtype
*Position,你的*Position已经是申明好的指针,不是结构体类型
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
刚珉曲材
2020-03-19 · TA获得超过3万个赞
知道大有可为答主
回答量:1.2万
采纳率:26%
帮助的人:873万
展开全部
我运行过,我把你的改了一下
struct
Elemtype
/*结点类型*/
{
int
data;
struct
Elemtype
*next;
}Lnode,*Position;//这里的那个逗号改成英文状态下的就行了
struct
/*链表类型*/
{
struct
Elemtype
head,tail;//这里原来的Position不是数据类型,所以我改成了这样,我不知道你是不是要的是这种数据类型。
int
length;
}LinkList;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式