注册 登录
编程论坛 ASP技术论坛

我有3个数组 怎么对应取值那-----------又出 错误啦

guang2356447 发布于 2010-07-29 16:43, 789 次点击
冰镇柠檬汁儿   再来帮我看看啊    在线等你啊

我的程序      

response.Write "<font color='#ff0000'>颜色</font>&nbsp;&nbsp;&nbsp;"
for i=0 to ubound(stra)
response.Write stra(i)
next
response.Write "<br>"
'-----------------------------------------------------------------------------------------
response.Write "<font color='#ff0000'>尺寸</font>&nbsp;&nbsp;&nbsp;"
for i=0 to ubound(stra2)
response.Write stra2(i)
next
response.Write "<br>"
'-----------------------------------------------------------------------------------------
response.Write "<font color='#ff0000'>合计</font>&nbsp;&nbsp;&nbsp;"
for i=0 to ubound(stra3)
response.Write stra3(i)
next
response.Write "<br>"
'-----------------------------------------------------------------------------------------
'总的-----------------------
response.Write "<br>"

for i=0 to ubound(stra)
response.Write "颜色:"
response.Write stra(i)
response.Write "<br>"
'-------------------------------循环读取8个记录----------------------------------------------------------
for j=0 to 8
response.Write stra2(i * 8 + j)                       //帮忙解释下这句什么意思
next
'-----------------------------------------------------------------------------------------
response.Write "<br>"
response.Write "合计"
response.Write stra3(i)
response.Write "<br>"
next

执行的结果
颜色   绿色 111 白色 象牙白
尺寸   1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4
合计   8 16 24 32

颜色:绿色
1 1 1 1 1 1 1 1 2                       //执行错误   9个记录  我需要8个1
合计8
颜色: 111
2 2 2 2 2 2 2 2 3                        //执行错误           8个2     
合计 16
颜色: 白色
3 3 3 3 3 3 3 3 4                       //执行错误              8个3
合计 24
颜色: 象牙白
4 4 4 4 4 4 4 4                               //执行错误           8个4
合计 32


我吧那个8 改成7后  执行的结果

颜色   绿色 111 白色 象牙白
尺寸   1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4
合计   8 16 24 32

颜色:绿色
1 1 1 1 1 1 1 1                         //执行正确
合计8
颜色: 111
1 2 2 2 2 2 2 2                         //执行错误
合计 16
颜色: 白色
2 2 3 3 3 3 3 3                        //执行错误
合计 24
颜色: 象牙白
3 3 3 4 4 4 4 4                          //执行错误
合计 32

[ 本帖最后由 guang2356447 于 2010-7-29 16:53 编辑 ]
14 回复
#2
冰镇柠檬汁儿2010-07-29 16:56
for i=0 to 3
response.Write "颜色:"
response.Write stra(i)
response.Write "<br>"
'-------------------------------循环读取8个记录----------------------------------------------------------
for j=0 to 7
    response.Write stra2(i * 8 + j)
next
'-----------------------------------------------------------------------------------------
response.Write "<br>"
response.Write "合计"
response.Write stra3(i)
response.Write "<br>"
next

你先这么改一下,看看结果是否正确
#3
guang23564472010-07-29 17:02
可以啦   太感谢啦  

for j=0 to 7
    response.Write stra2(i * 8 + j)
next

帮我解释下  这句什么意思啊   
#4
jjld2010-07-29 17:19
你把两个8都改成7了吧?
#5
hams2010-07-29 17:35
恕我愚钝,不知你想要做什么。
#6
guang23564472010-07-30 08:23
for j=0 to 7
    response.Write stra2(i * 8 + j)
next


怎么那个7   和8改成  可变动的啊  比如改成传过来的值
还有就是怎么写入数据库中
for j=0 to 7
    response.Write stra2(i * 8 + j)
rs("cc")("j")=stra2(i * 8 + j)            
 //那个cc (尺寸)后面的(“j”)代表字段几   可能是cc1   cc2  cc3...cc8   语法应该怎么写  就用j     现在的是错误的
next

[ 本帖最后由 guang2356447 于 2010-7-30 08:26 编辑 ]
#7
jjld2010-07-30 08:43
rs("cc")("i * 8 + j")=stra2(i * 8 + j)这样呢?  
#8
guang23564472010-07-30 09:29
rs("cc")("i * 8 + j")=stra2(i * 8 + j)

不能这么写  
#9
guang23564472010-07-30 10:22
冰镇柠檬汁儿    快来帮忙啊
#10
guang23564472010-07-30 10:25
for j=0 to 7
    response.Write stra2(i * 8 + j)
next


怎么那个7   和8改成  可变动的啊  比如改成传过来的值
还有就是怎么写入数据库中
for j=0 to 7
    response.Write stra2(i * 8 + j)
rs("cc")("j")=stra2(i * 8 + j)            
//那个cc (尺寸)后面的(“j”)代表字段几   可能是cc1   cc2  cc3...cc8   语法应该怎么写  就用j     现在的是错误的
next
#11
冰镇柠檬汁儿2010-07-30 10:40
呃,昨天回答完你的问题,我就一直忙,结果页没时间再来看了,抱歉。

for j=0 to 7      '这句是说让j从0开始,0,1,2,3,4,5,6,7循环8次,即j大于等于0小于等于7的时候循环
    response.Write stra2(i * 8 + j)
next
i * 8 + j  '至于这个,你可以算啊,我前面是有这样的代码的,for i=0 to 3,也就是说让i在0到3之间循环4次,那么
i * 8 + j这个你可以把i和j的值代进去算一下,这个可是简单的运算了,就不用我教了吧,呵呵
ubound(stra)这个代码的具体意义我不清楚,但是我猜应该是返回stra的长度,那么它的返回值很有可能是4,那么循环就会走5次,结果自然会有问题,所以我的2楼的代码把ubound(stra)改成了3,只是为了测试一下.

既然你在3楼说可以了,那么我的猜想就没错,所以在第一层循环中你应该这样写
for i=0 to ubound(stra) - 1


[ 本帖最后由 冰镇柠檬汁儿 于 2010-7-30 10:42 编辑 ]
#12
guang23564472010-07-30 10:43
rs("cc"&j&"")=stra2(i * 8 + j)  

//这样写就对啦
#13
冰镇柠檬汁儿2010-07-30 10:47
以下是引用guang2356447在2010-7-30 10:43:17的发言:

rs("cc"&j&"")=stra2(i * 8 + j)  

//这样写就对啦
不完全对,呵呵,rs("cc"&j)=stra2(i * 8 + j),好好观察下区别,j后面的接的既然是空字符串,那接它有什么意义?反而会浪费,呵呵
#14
guang23564472010-08-01 21:27
非常感谢
冰镇柠檬汁儿
#15
冰镇柠檬汁儿2010-08-01 21:44
不客气,这些都是简单的算法问题,当你的代码写多了,这些也就自然不是问题了
1