注册 登录
编程论坛 VB6论坛

求助Text1如何提取Text2中数字窜前五个不重复的数字

dq8888 发布于 2015-05-29 20:39, 889 次点击
如:Text2中数字窜:22366478559.提取到Text1为23647.
    Text2中数字窜:523443678.提取到Text1为52346.
(顺序提取Text2中数字窜前五个不重复的数字)
9 回复
#2
wmf20142015-05-29 21:36
应该是顺序提取5个text2中不重复的数字吧。
#3
dq88882015-05-29 21:38
回复 2楼 wmf2014
是的。如556789801提取为56789
#4
取名字2015-05-29 22:16
可以设置一个计数器n,初始值为1,将Text2中第一个数字提取出来存入Text1中,之后每次从Text2中提取一个数字,就与Text1中的数字进行比较,相等则不存入Text1,不相等则存入Text1(此时计数器n+1),直到计数器n=5。
#5
wmf20142015-05-29 22:17
这太简单了,你还是自力更生吧。
#6
dq88882015-05-29 22:28
回复 4楼 取名字
谢谢,我是初学的,你说的这个我也不会,请帮帮忙!
#7
取名字2015-05-29 22:48
我这里简单的画一个框架,你自己用C语言去实现吧。
Text1[6]:char
Text2[]="22366475849":char
n=1,i,j:integer
Text2第一个数字赋给Text1第一个元素
i=1
这里构造一个循环,条件"i小于Text2的长度并且n小于5"
    j=0
    嵌套一个循环,条件"j小于n"
        判断Text2[i]是否等于Text1数组中的任意一个数,等于则退出内层循环。
    内层循环结束
    判断Text2[i]是否有重复的数字,没有就存入Text1[n]中,同时n++
    继续寻找
结束外层循环
给Text1字符数组赋予一个字符串结束符'\0'
用printf函数的"%s"格式说明符输出Text1
#8
dq88882015-05-29 23:25
回复 7楼 取名字
谢谢!
#9
随意取一个2015-05-29 23:47
用两个数字数组也行   不过字符是正序   数字是逆序
#10
heizu2015-06-12 11:07
dim i,j as string
dim k as integer
i=text2.text
for k=1 to 5
    j=j & left(i,1)
    i=replace(i,left(i,1),"")
    if len(i)<=0 then exit for
next
text1.text=j

[ 本帖最后由 heizu 于 2015-6-12 11:10 编辑 ]
1