+ -
当前位置:首页 → 问答吧 → 求高手中的高手帮忙一个排列输出问题

求高手中的高手帮忙一个排列输出问题

时间:2011-11-28

来源:互联网

我需要把一个房源信息按照一下规则输出来:
1、按小区优先输出(同小区的房源放一起输出)
2、同小区的房源,按发布者间隔输出(如:小区1 --发布者张三,小区1 发布者李四,小区1 发布者王五 )
3、同小区且同个发布者的房源不能紧挨着输出,仅当没有其他发布者的时候才紧挨着输出(如:如:小区1 --发布者张三,小区1 发布者李四,小区1-发布者张三 小区1-发布者张三  

以下是我模拟的数据,请高手帮忙写个程序 实现以上需求!
(贴上源码)
Option Explicit

 
Private Type house
  user As String '房源发布者
  houseInfo() As String '房源信息
  isout() As Boolean '标注是否已经被输出过,我自己的想法,可以不要这个
  '注释:每个房源发布者可发布多条房源信息
End Type


Dim h(3) As house


'初始化各发布者的房源信息还没有输出过
Sub initIsout(ByRef out() As Boolean)
Dim i As Integer
For i = 0 To UBound(out)
  out(i) = False
Next
End Sub


Private Sub Form_Load()
'构建的模拟房源信息
 ReDim h(0).houseInfo(2)
 ReDim h(0).isout(2)
 
 Dim i As Integer
 h(0).user = "张三"
 h(0).houseInfo(0) = "小区1"
 h(0).houseInfo(1) = "小区1"
 h(0).houseInfo(2) = "小区2"
 Call initIsout(h(0).isout)
 
 ReDim h(1).houseInfo(3)
 ReDim h(1).isout(3)
 h(1).user = "李四"
 h(1).houseInfo(0) = "小区1"
 h(1).houseInfo(1) = "小区2"
 h(1).houseInfo(2) = "小区2"
 h(1).houseInfo(2) = "小区3"
 
 ReDim h(2).houseInfo(1)
 ReDim h(2).isout(1)
 h(2).user = "王五"
 h(2).houseInfo(0) = "小区2"
 h(2).houseInfo(1) = "小区3"
 
 ReDim h(3).houseInfo(5)
 ReDim h(3).isout(5)
 h(3).user = "赵六"
 h(3).houseInfo(0) = "小区1"
 h(3).houseInfo(1) = "小区1"
 h(3).houseInfo(2) = "小区1"
 h(3).houseInfo(3) = "小区1"
 h(3).houseInfo(4) = "小区1"
 h(3).houseInfo(5) = "小区3"
End Sub

'需要编写的输出代码
Function outputHouse()

'可保存到记事本,或窗体上文本框 ,或一个字符串变量
'能实现就行了

End Function


'请高手帮忙!谢谢,在线等!

作者: qq2272941360   发布时间: 2011-11-28

注:同个发布者的房源信息已经按照小区来排列了的。如:
Dim i As Integer
 h(0).user = "张三"
 h(0).houseInfo(0) = "小区1"
 h(0).houseInfo(1) = "小区1"
 h(0).houseInfo(2) = "小区2"
上面已经按照 小区来编排了。

作者: qq2272941360   发布时间: 2011-11-28

你的数据不可能一直保存在数组中吧?要存在数据库中的,从数据库中按指定顺序查询出记录集,再进行显示~~~~

作者: chinayuppie   发布时间: 2011-11-28

楼主以上的代码都可以写出来
baidu下就可以写出其他代码

作者: yangao   发布时间: 2011-11-28

热门下载

更多