fortran 里定义一个FUNCTION 怎么写才能让这个函数返回值是一个数组 。

例如传入一个3*3的数组返回值是输入的这个数组里的每个元素乘以2的一个新数组。... 例如传入一个3*3的数组 返回值是输入的这个数组里的每个元素乘以2的一个新数组。 展开
 我来答
无风雨晴
2020-12-03
知道答主
回答量:4
采纳率:0%
帮助的人:3302
展开全部

这个问题可以通过定义pure elemental 属性的function 来解决:

如下图中的代码所示,数组是一维或二维均可以。


2.运行结果

天河流纹石
推荐于2017-10-04 · TA获得超过1.3万个赞
知道大有可为答主
回答量:7624
采纳率:76%
帮助的人:4050万
展开全部
返回值也可以,用虚参传递也可以。

比如以下例子:func1 用返回值,sub2 用虚参。
Program Baidu_Thlws
real a(3,3) , b(3,3)
a = 1.0
b = func1( a )
write( * , * ) 'first' , b
b = 0.0
call sub2( a , b )
write( * , * ) 'second' , b
Contains
Function func1( x )
Real :: x( 3 , 3 ) , func1( 3 , 3 )
func1 = x * 2.0
End Function func1
Subroutine sub2( x , y )
Real :: x( 3 , 3 ) , y( 3 , 3 )
y = x * 2.0
End Subroutine sub2
End Program Baidu_Thlws
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
changchengz0
2013-01-15 · TA获得超过127个赞
知道答主
回答量:70
采纳率:0%
帮助的人:51.4万
展开全部
不记得FORTRAN能有返回数组的函数,或许你的版本特殊吧,一般编程也没这样的必要啊。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式