当前位置:编程学习 > VB >>

VB的赋值问题,谢谢指教!!!

问题大概是这样 Option Explicit Dim a() As Double, c() As Double Private Sub Command1_Click() ReDim c(7) Call r c = a '为什么 c=a 可以把a的值赋给c,而 c = (-1) * a 又不可以,在不用a(i)=c(i)等的情况下,应什么解决呢? c = (-1) * a End Sub Private Sub r() Dim i As Integer ReDim a(7) For i = 1 To 7 a(i) = i Next End Sub
追问:好像两个数组a,b,它们也不能相剩是不(a*b)??/
答案:a 和c都是double数组 把一个数组赋给另一个数组是正确的 c = a
但是你让一个数组乘以一个数字 这个语法是错误的  c = (-1) * a  如果想让a中的每个都乘以-1 
必须遍历a数组 让a的每个值乘以-1  再把a 赋给c
其他:因为a是一个数组,(-1) * a 不是一个合法的表达式,所以没有捷径 把一个数组的值赋值给另一个数组,是可以用c=a的,但这仅仅是赋值,(-1) * a 意思 对数组的每个值取相反数,但语法不支持这种写法,你只能用
For i = 1 To 7
      a(i) = (-1) *a(i)
    Next
然后再用c=a赋值才行。 做个循环 遍历一下 就OK了 

上一个:4+5\6*7/8Mod9 =多少 VB题求过程,谢谢
下一个:vb程序设计 将阿拉伯数字转换成大写人民币金额 这是小弟的VB结课设计,跪求各位大神~

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,