在这一部分,我们将通过几个具体的示例来演示return语句的使用方法。 示例1:简单的函数 下面是一个示例函数,用于计算斐波那契数列的第n项,并将结果返回给调用者: fortran function fibonacci(n) result(fib) integer, intent(in) :: n integer :: fib if (n <= 0) then return 0 elseif (n == 1) then...
if (index(str1, 'ran') /= 0) then print *, 'Substring "ran" found in str1.' else print *, 'Substring "ran" not found in str1.' end if end program string_comparison 代码解释 字符串比较: 使用 ichar 函数将字符串转换为ASCII码,并比较它们的差值来判断字符串是否相等。 字符串查找: 使...
IF (N.EQ.1) THEN Z=Y(1)RETURN END IF IF (N.EQ.2) THEN Z=(Y(2)*(T-X1)-Y(1)*(T-X1-H))/H RETURN END IF IF (T.GT.X1) THEN P=(T-X1)/H I=P Q=1.0*I I=I+1 IF (P.GT.Q) I=I+1 ELSE I=1 END IF K=I-4 IF (K.LT.1) K=1 M=I+3 IF (...
IF(QZDATA.GE.0.) THEN ICNT = ICNT + 1 ROX(ICNT) = XA(I)-DELTA/2. ENDIF SUM = SUM + X(I) ENDIF SUM = SUM + XA(I) 使用块 IF 不仅可以提高编译器生成优化代码的机会,而且可以增强可读性并确保可移植性。 9.1.5 查看编译器注释 如果用-g调试选项进行编译,可使用er_src(1) 公用程序(...
end if 如果then后面只有一句,可写为 if(逻辑判断式) …… !then和end if可省略 (2) 多重判断: if(条件1) then …… else if(条件2)then …… else if (条件3)then …… else …… end if (3) 嵌套: if(逻辑判断式) then if(逻辑判断式) then ...
if (ib.gt.3) a(i,j,k,l) = a(i,j,k,l) / 2 end do end do end do end do return end sgn函数: function sgn(a) include 'ABA_PARAM.INC' sgn = 1.0 if (a .lt. 0.0) sgn = -1.0 if (a .eq. 0.0) sgn = 0.0 return ...
If radius and height could not be read from input, then cycle through the loop.if(ierr /=0)thenwrite(*,*)'Error, invalid input.'cycleinteractive_loop!cycle 相当于C里的continueendif! Compute area. The ** means "raise to a power."area =2* pi * (radius**2+ radius*height)! 指数运算...
if (det == 0.0) then info = 1 return end if ! 计算解x = A^(-1) * b x = 0.0 do i = 1, n do j = 1, n x(i) = x(i) + temp(i, j) * b(j) end do end do info = 0 end subroutine solve ! 子程序:求矩阵A的逆矩阵 ...
rewind将文件读写指针置于文件开头说明项errbhiostatm可以省略backspace说明项3将文件读写指针回退一行fortran77选择判断语句61逻辑if语句逻辑表达式程序语句62逻辑表达式then程序块end63标准选择else程序块64多重选择块else程序块n1endfortran77循环语句71go语句标号程序行程序块goto标号72do语句do标号记数变量起始值终止值...
if (ypn.gt..99e30) then qn=0.un=0.else qn=0.5 un=(3./(x(n)-x(n-1)))*(ypn-(y(n)-y(n-1))/(x(n)-x(n-1)))endif y2(n)=(un-qn*u(n-1))/(qn*y2(n-1)+1.)do 12 k=n-1,1,-1 y2(k)=y2(k)*y2(k+1)+u(k)12 continue return END C ...