主题:二维转一维
剑圣风暴
[专家分:450] 发布于 2007-07-23 18:11:00
二维转一维
回复列表 (共4个回复)
沙发
Matodied [专家分:7560] 发布于 2007-07-23 20:39:00
二维转一维的公式:
二维数组a的元素(i,j)应该放在一维数组的:
(i-1)*UBOUND(a,2)+j
个元素里。
程序:
CLS
INPUT m, n
DIM a(m, n), b(m * n)
FOR i = 1 TO m: FOR j = 1 TO n
PRINT "a("; i; ","; j; ")=:";
INPUT a(i, j)
b((i - 1) * n + j) = a(i, j)
NEXT j, i
FOR i = 1 TO m * n: PRINT b(i); : NEXT i
END
板凳
Lovely哆啦 [专家分:1360] 发布于 2007-07-24 07:50:00
[quote]二维转一维的公式:
二维数组a的元素(i,j)应该放在一维数组的:
(i-1)*UBOUND(a,2)+j
个元素里。
程序:
CLS
INPUT m, n
DIM a(m, n), b(m * n)
FOR i = 1 TO m: FOR j = 1 TO n
PRINT "a("; i; ","; j; ")=:";
INPUT a(i, j)
b((i - 1) * n + j) = a(i, j)
NEXT j, i
FOR i = 1 TO m * n: PRINT b(i); : NEXT i
END
[/quote]
3 楼
小小傻瓜 [专家分:150] 发布于 2007-07-24 14:44:00
最简单,易懂
INPUT M,N ’输入行列
FOR I=1 TO M
FOR J=1 TO M
INPUT A(I,J)
PRINT A(I,J);
S=S+1 ’B数组下标指针
B(S)=A(I,J)
NEXT J
PRINT
NEXT I
FOR I=1 TO S
PRINT B(I);
NEXT I
很简单吧!
4 楼
V2战警2 [专家分:390] 发布于 2007-07-27 17:27:00
设2维数组是N行N列的:
cls
input n
dim a(n,n),b(n+n)
(赋值略)
for i=1to n
for j=1to n
q=q+1
b(q)=a(i,j)
next j
next i
end
我来回复