C语言中如何实现对结构体的查找以及输出?

我用C语言编手机通讯录,其中包括查找功能。输入联系人名字,然后输出他的名字以及电话号码,找不到则显示“找不到”用结构体进行编译,这种方法是不是不对了?可否给我详细一点的代... 我用C语言编手机通讯录,其中包括查找功能。
输入联系人名字,然后输出他的名字以及电话号码,找不到则显示“找不到”
用结构体进行编译,这种方法是不是不对了?
可否给我详细一点的代码?
展开
 我来答
风若远去何人留
推荐于2017-09-20 · 知道合伙人互联网行家
风若远去何人留
知道合伙人互联网行家
采纳数:20412 获赞数:450132
专业C/C++软件开发

向TA提问 私信TA
展开全部
C语言的结构体是一组数据的组合,并不是简单的单一类型。所以在查找和输出的时候,均不能直接操作,而是要进行变通。
1 查找。
对于以某一项为关键字进行查找时,比如在结构体中有int型的成员a,要查找a为100的结构体变量,这时需要遍历每个结构体(数组、链表、或者其它任意形式),对每个元素的成员a值进行比较,符合的则表示查找成功。
对于结构体中元素较多,同时要对整个结构体每个元素都匹配才算查找到的特殊情况,可以使用memcmp的方式,整体进行比较,以减少代码量。不过这种情况较为少见,不过多描述。

2 输出。
对于结构体的输出,其实就是对其每一项,或者若干项成员变量的输出。
所以可以使用基本的输出函数,对每一项单独输出,输出中为了方便阅读,可以加一些说明文字。
如果对结构体输出有多处调用的需求,可以在将该功能封装为函数,供各个需要的函数调用。这样的好处是,当结构体的成员出现变化,或者结构体输出要求更改时,修改一处代码即可完成所有的输出修改,实现易于维护的效果。
暗黑系巨龙吟风
2010-01-04 · 超过17用户采纳过TA的回答
知道答主
回答量:85
采纳率:0%
帮助的人:0
展开全部
可行!
使用结构体可以实现
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
swordlance
2010-01-04 · TA获得超过1008个赞
知道小有建树答主
回答量:535
采纳率:75%
帮助的人:449万
展开全部
使用结构体本身不影响的,看你具体是如何实现了?结构体数组,链表?
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式