求数组加法教学程序代码
程序需要实现的功能:
实现一维或二维的任意数组相加
例如:
(2个都是1维)
int a [] = new {1,2,3};
int b [] = new {2,3,4};
要的程序结果是 int c 为{3,5,7}
(1个是1维1个是2维)
int a [] = new { {1,2,3} , {0,0,3} }
int b [] = new {1,2,3}
要程序结果是 int c 为 {{2,4,6},{0,0,3}}
也就是说如果维数不足,就补0.2维的也是这样
小弟的思路是
(1)先获取2个数组的维数 , 这个小弟已经自己会了 a.Rank 就可以获取
(2) 获取维数多的这个数组的每个维的长度 , 小弟找的的方法是GetLength()这个方法,不知道对不对.
(3)将 不组的数组 加 0 元素
(4) 做 加法(这里说的加法并不是 + 这个运算符号)
求各位高手解决了,小弟是 个菜鸟,希望能大家详细回答小弟的问题!!!!!!小弟在此谢谢大家了!!!!
------解决方案--------------------
大哥 你的定义对吗
int a [] = new {1,2,3};
int a [] = new { {1,2,3} , {0,0,3} }
------解决方案--------------------
可以看看
矩阵
的相关算法
------解决方案--------------------思路挺清晰的!!
------解决方案--------------------
(1)先获取2个数组的维数 , 这个小弟已经自己会了 a.Rank 就可以获取
(2) 获取维数多的这个数组的每个维的长度 , 小弟找的的方法是GetLength()这个方法,不知道对不对. a.Length就行
(3)将 不足的数组 加 0 元素
取长度最长的,其他不足的定义为和最长的相同,不足的补零
(4) 做 加法(这里说的加法并不是 + 这个运算符号)
用for循环,将相同维数,相同下标的元素相加,放到result数组中
------解决方案--------------------没仔细看
微软好像有教学用的类似模板之类的,忘了地址了,不知道能否找到有用