| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 818 人关注过本帖
标题:[求助]结构体中如何验证唯一性
只看楼主 加入收藏
kankanba
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2005-10-24
收藏
 问题点数:0 回复次数:7 
[求助]结构体中如何验证唯一性

我建了一个结构体,想做个验证输入的编号不重复的函数,编号设成char型,然后用strcmp来比较,但是没有效果。例如第一个人的编号是001,那么以后其他人就不能再输入001了。
请指教。

搜索更多相关主题的帖子: 唯一性 结构体 验证 
2006-01-21 10:58
ChenMo
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:3
帖 子:481
专家分:10
注 册:2004-4-8
收藏
得分:0 

巧妇难煮无米之炊。
你的结构体还有你的不重复函数能贴上来不?


欢迎加入 MVC 技术讨论群(新群:90093426)
2006-01-21 13:23
kankanba
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2005-10-24
收藏
得分:0 

没有个思路提供下?

2006-01-21 16:57
aiyuheng
Rank: 1
等 级:新手上路
威 望:1
帖 子:656
专家分:0
注 册:2006-1-12
收藏
得分:0 
我的想法是这样,在每次输入的时候都跟以前输入的数比较,如果有相同则重输入,则重新出入,我想应该避免不了用GOTO,或者BREAK来退出循环.另外可以建立个数组在结构体中,等比较的时候就一一比较就行
我的想法还不成熟.只说这么多了

when i want to ask anyone,i will ask myself first.
2006-01-21 20:08
黑白格子布
Rank: 1
等 级:新手上路
威 望:1
帖 子:67
专家分:0
注 册:2005-12-11
收藏
得分:0 
编号设置成long int不好??那样好比较
然后做3个函数,一个输入数据,另一个比较编号,在输入数据的时候调用比较函数进行比较
然后做个输出函数用于输出数据,main调用根据从键盘接受的命令调用这几个函数就可以

今天没空了,要是下次上你的问题还没解决就写下我自己的想法哦,不好意思

2006-01-21 22:30
kankanba
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2005-10-24
收藏
得分:0 

谢谢2位,之所以把编号定义为char,是因为想规定它的长度、位数以及只能输入0-9,用int不方便。这个是用来放在do-while结构里做while后面的条件的,前面的几个要求都能实现,就是无法验证重复性。本来也是想定义两个变量,做循环追踪,但是和上面几个要求放在一个函数里很难受,看来只能另外再写了。

2006-01-21 22:52
aiyuheng
Rank: 1
等 级:新手上路
威 望:1
帖 子:656
专家分:0
注 册:2006-1-12
收藏
得分:0 

我想既然不能放在同一个函数就分开来写呗


when i want to ask anyone,i will ask myself first.
2006-01-22 00:13
神vLinux飘飘
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:浙江杭州
等 级:贵宾
威 望:91
帖 子:6140
专家分:217
注 册:2004-7-17
收藏
得分:0 
这个没什么难的
用链表存储已经输入的编号,之所以要用链表,是因为用数组就限定死了大小,不够链表灵活

在判断链表中是否已经存在该编号的算法就很值得讨论了

1.与链表的每个单位进行比较,遇到相同的则返回,这不失为一种算法,但是这个很明显是愚蠢的,但同时也是最简单和容易理解的。

2.采用二分法。先把输入的编号按照一个规律排序(比如字母顺序、数字大小等),然后每次查找时候就从1/2、1/4、1/8....去查找直到一个足够小的范围后再在那个小范围内进行字符串或者数值大小比较。

这是我的一个想法,没验证过,所以也不能保证一定成功

淘宝杜琨
2006-01-22 08:43
快速回复:[求助]结构体中如何验证唯一性
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015292 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved