首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在fortran中子例程的主程序中将输出写入相同的txt文件中

在Fortran中,子例程是指在主程序中调用的子程序或函数。子例程可以用来执行特定的任务,并且可以在主程序中多次调用。

要将输出写入相同的txt文件中,可以使用Fortran中的文件操作功能。以下是一个示例代码:

代码语言:txt
复制
program main
  implicit none
  integer :: i, n
  real :: x, y
  character(len=20) :: filename
  integer, parameter :: output_unit = 10

  ! 设置输出文件名
  filename = "output.txt"

  ! 打开输出文件
  open(unit=output_unit, file=filename, status='replace')

  ! 设置输出格式
  write(output_unit, '(A)') "Output:"

  ! 调用子例程进行计算和输出
  call subprogram(output_unit)

  ! 关闭输出文件
  close(output_unit)

contains

  subroutine subprogram(output_unit)
    implicit none
    integer, intent(in) :: output_unit

    ! 执行计算和输出
    do i = 1, 10
      x = i * 0.1
      y = x**2
      write(output_unit, '(F6.2, 2X, F6.2)') x, y
    end do

  end subroutine subprogram

end program main

在上面的示例代码中,首先定义了一个主程序main和一个子例程subprogram。主程序中声明了一个文件名变量filename,用于指定输出文件的名称。然后,使用open语句打开输出文件,并指定文件的单元号output_unit和文件名filename。接下来,使用write语句将输出格式写入输出文件。在子例程中,使用write语句将计算结果写入输出文件。最后,使用close语句关闭输出文件。

这样,子例程的输出将会被写入到相同的txt文件中。你可以根据实际需求修改代码中的输出格式和计算逻辑。

腾讯云相关产品和产品介绍链接地址:

  • 腾讯云计算服务:https://cloud.tencent.com/product/cvm
  • 腾讯云对象存储:https://cloud.tencent.com/product/cos
  • 腾讯云数据库:https://cloud.tencent.com/product/cdb
  • 腾讯云人工智能:https://cloud.tencent.com/product/ai
  • 腾讯云物联网:https://cloud.tencent.com/product/iot
  • 腾讯云移动开发:https://cloud.tencent.com/product/mpp
  • 腾讯云区块链:https://cloud.tencent.com/product/baas
  • 腾讯云元宇宙:https://cloud.tencent.com/product/mu
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

CMake 秘籍(四)

准备就绪 本配方代码示例是 Fortran 和 C 语言,为第九章,混合语言项目,其中将讨论混合语言编程。...主程序是一个简单 Fortran 可执行文件,它调用一个 C 函数print_info(),该函数将打印配置信息。...,遍历vars_dict字典所有键,将模式@key@替换为其对应值,并将结果写入输出文件。...我们目标是记录程序版本,以便在配置项目时将其记录到头文件。生成文件随后可以代码正确位置和时间被包含,以便将代码版本打印到输出文件或屏幕上。...准备工作 我们将使用与之前配方相同源代码。唯一变化将在CMakeLists.txt文件,我们将在接下来章节讨论这些变化。

22020

全志V853 NPU开发之Demo使用说明

首先我们 menuconfig 里选中 YOLOV3 相关选项 可以看到这里选择了 yolov3 会出现 yolov3-model 这个选项,这个选项是提供一个测试使用模型到系统文件较大,如果编译打包出现错误请参阅...开发板,可以运行 vpm_run 查看支持操作 vpm_run 可以看到,他需要一个 sample.txt 文件,定义如下 [network] # 模型名称 ..../lenet_output_data.dat 其中 golden 标签代表是标准输入,可以看作一个满分输出,这个输出可以用预推理阶段生成输出文件,也可以用仿真输出文件。...尝试将把sample.txt文件空格去掉,这是导致segmentation fault错误原因之一。 windows操作系统换行为:CR/LF或\r\n,而Linux换行符为LF或\n。...② NPU模块vpm_run例程运行时sample.txt读取错误 编写sample.txt文件: ``` [network] ./network_binary.nb [input] .

18710
  • CMake 秘籍(五)

    准备工作 本菜谱,我们将构建并测试与第四章,创建和运行测试,第 3 个菜谱,定义单元测试并链接到 Google Test相同文件,main.cpp、sum_integers.cpp、sum_integers.hpp...主程序是linear-algebra.cpp。所有源文件都组织src子目录下。为了限定范围,我们将 CMake 代码拆分到三个CMakeLists.txt文件,现在我们将讨论这些文件。...如何操作 这个项目混合了 C++(主程序语言)、Fortran(因为这是库所写语言)和 C(需要用来包装 Fortran例程)。...此外,对PythonLibs搜索要求开发头文件和库相同主要和次要版本与解释器发现版本相同。这是为了确保整个项目中使用一致解释器和库版本。...与 C++实现主要区别在于,账户库是由 Fortran 90 源文件编译而成,我们account/CMakeLists.txt对此进行了考虑: add_library(account SHARED

    62820

    ABAP 模块化编程概念详解

    注意: 子例程应避免使用主程序变量,应使用参数 例程定义变量,只例程中有效 子例程定义方式 子例程定义方式 子例程定义方式: 以FORM开头、以 ENDFORM 结尾...一般都将同一程序定义所有内部子例程都集中定义程序末尾。 子例程定义不能互相嵌套。...参数传递方式 参数传递: 将主程序变量传递给子例程形式参数 传递类型: 值传: 子例程参数变量改变,不影响外部程序实际变量值 引用传: 若子例程参数变量值发生了改变...: 主程序定义变量 这些变量整个主程序和调用每个子例程均可见(可进行处理) 局部变量: 例程定义变量称作局部变量, 这些变量只存在于相关例程(与形式参数相同),只能在子例程中使用...值传并返回结果 C:值传并返回结果 传递参数方式同值传递相同,但在子例程执行过程,变量值不改变,而结束执行后,把变量最终值返回。

    1.5K21

    Linux常用文件管理命令详解

    -b 由1开始对所有输出行数进行编号,对于空白行不编号。 -s 当遇到有连续两行以上空白行,就替换为一行空白行。 -E 每行结束处显示$。...-T 将 TAB 字符显示为^I 使用示例: 将一个万猫学社每个字占一行写入one.txt文件,再查看文件one.txt内容。...> 指定一个数目 -l 标示出所有不一样地方 -s 不显示错误信息 -v 显示版本信息 --help 显示帮助信息 使用示例: 将一个万猫学社77每个字占一行写入one.txt文件: echo -...diff diff命令用于比较文件差异。diff命令以逐行方式,比较文本文件异同处。如果指定要比较目录,则diff会比较目录相同文件文件,但不会比较其中子目录。...-W 使用-y参数时,指定栏宽 使用示例: 比较one.txt文件和more.txt文件,以并排格式输出

    50720

    Java基础之IO流(二)

    在上一篇,我们一直都是操作文件或者文件夹,并没有给文件写任何数据。...现在我们就要开始给文件写数据,或者读取文件数据 字节输出流OutputStream OutputStream此抽象类,是表示输出字节流所有类超类。...操作数据都是字节,定义了输出字节流基本共性功能方法 输出定义都是写write方法 FileOutputStream类 OutputStream有很多子类,其中子类FileOutputStream...可用来写入数据到文件 FileOutputStream类,即文件输出流,是用于将数据写入 File 输出流 将数据写到文件 /** * 将数据写到文件 */ public static void...有很多子类,其中子类FileInputStream可用来读取文件内容 FileInputStream 从文件系统某个文件获得输入字节 在读取文件数据时,调用read方法,实现从文件读取数据

    32330

    Linux 进程间通信之管道(pipe)、命名管道(FIFO)与信号(Signal)

    有两个 file 数据结构,但它们定义文件操作例程地址是不同,其中一个是向管道写入数据例程地址,而另一个是从管道读出数据例程地址。...当写进程向管道写入时,它利用标准库函数write(),系统根据库函数传递文件描述符,可找到该文件 file 结构。...但是,进程可以没有数据或内存被锁定时立即返回错误信息,而不是阻塞该进程,这依赖于文件或管道打开模式。 反之,进程可以休眠索引节点等待队列中等待写入进程写入数据。...写模式进程向FIFO文件写入,而读模式进程从FIFO文件读出。 当删除FIFO文件时,管道连接也随之消失。...进程可以登记特殊信号处理函数。 当进程收到信号时,信号处理函数将像中断服务例程一样被调用,当从该信号处理函数返回时,控制被返回给主程序,并且继续正常执行。 但是,信号和中断有所不同。

    2.4K30

    Python基础训练100题-20

    分享一些Python学习题目 实例096:计算复读次数 实例097:磁盘写入 实例098:磁盘写入II 实例099:磁盘读写 实例100:列表转字典 实例096:计算复读次数 实例096:计算复读次数...题目:计算字符串中子串出现次数。...s1='xuebixuebixuebixuebixuebixuebixuebixue' s2='xuebi' print(s1.count(s2)) 实例097:磁盘写入 题目:从键盘输入一些字符,逐个把它们写到磁盘文件上...II 题目:从键盘输入一个字符串,将小写字母全部转换成大写字母,然后输出到一个磁盘文件"test"中保存。...)) fp.close() 实例099:磁盘读写 题目:有两个磁盘文件A和B,各存放一行字母,要求把这两个文件信息合并(按字母顺序排列), 输出到一个新文件C

    33220

    Matlab C混合编程

    用C++(或者C)语言操作MATLAB,有三种途径: MEX文件 MATLAB可调用C或Fortran语言程序称为MEX文件。MATLAB可以直接把MEX文件视为它内建函数进行调用。...MEX文件是动态链接例程,MATLAB解释器可以自动载入并执行它。...MEX文件主要有以下用途: 对于大量现有的C或者Fortran程序可以无须改写成MATLAB专用M文件格式而在MATLAB执行。...为了简化MATLAB环境之外对MAT文件使用,MATLAB给出了一个操作例程库,通过它,我们可以使用C/C++或者Fortran程序读写MAT文件。...MATLAB引擎程序指的是那些通过管道(UNIX系统)或者ActiveX(Windows系统)与独立MATLAB进程进行通信C/C++或者Fortran程序。

    1.4K20

    bat脚本执行命令_实用bat代码

    txt) do echo "%%i" pause 15、变量%0–%9 %0指该文件本身,%1–%9为接收到参数,如下例子中子程序%1即为主程序传输param1,%2即为param2 ::该文件名为...\test3文件夹下 ::前提d:\test1\test3文件夹必须已存在 ::相同文件文件会被覆盖 copy e:\test d:\test1\test3 22、xcope命令复制文件 @echo...@echo off cd /d d:\test ::将129.txt和156.txt两个文件内容合并存入新建new.txt copy 129.txt+156.txt new.txt ::打印出new.txt...txt 25、call使用 程序调用子脚本,在当前程序运行子脚本代码,子脚本执行完后继续执行本程序之后代码 ::该文件名为test.bat @echo off echo 这是主程序第一个输出 timeout...@echo off ::按行读取d:\test.txt文件内容,输出每行第一个数据,默认每行内以空格和tab为分隔符 for /f %%i in (d:\test.txt) do echo %%

    10.7K20

    c和fortran混编

    网上说要分c为主程序fortran主程序两种情况讨论,其实我觉得不用,只要你了解生成可执行文件机制。...这里还牵扯到一个问题,那就是c是很纯朴语言,c函数文本文件是什么名字,那么编译出来目标文件(一般是.o文件相应那个函数还是那个名字(不会像c++一样为了重载函数名前后加一大堆区分符)。...那么,说了这么多其实还是为了明确一点:要让链接器找到一个文件需要符号定义,那么链接就能成功,就能生成可执行文件了。这也是混编关键! ---- ---- 现在开始真真儿了。...将主程序main.c换成fortran !...这是编译器(f77)一个命名规则,没有为什么,它就是把你fortran函数名字全转换成小写,然后最后加一个下划线。我昨天搜了很多版本,头昏脑胀,怎么调都说找不到,也没有想到要自己看看。

    1.6K41

    优雅玩PHP多进程

    0 表示标准输入(stdin),1 表示标准输出(stdout),2 表示标准错误(stderr)。 数组元素可以是: 包含了要传送至进程管道描述信息。...有效类型有:pipe (第二个元素可以是: r 向进程传送该管道读取端,w 向进程传送该管道写入端), 以及 file(第二个元素为文件名)。..."w"), // 标准输出,子进程向此管道写入数据 2 => array("file", "/tmp/error-output.txt", "a") // 标准错误,写入到一个文件 ); $...// 0 => 可以向子进程标准输入写入句柄 // 1 => 可以从子进程标准输出读取句柄 // 错误输出将被追加到文件 /tmp/error-output.txt...> 以上例程输出类似于: Array ( [some_option] => aeiou [PWD] => /tmp [SHLVL] => 1 [_] => /usr/local

    53620

    NumPy 1.26 中文文档(四十六)

    如果sep是字符串“”或NULL,则以二进制字节形式写入数据。否则,使用sep字符串作为项分隔符,将self内容作为文本写入文件。每个项将被打印到文件。...此外,没有模块初始化子例程文件包含 numpy/arrayobject.h 之前定义 NO_IMPORT_ARRAY。...将来,用户可以依赖于从任何数组读取时为非 NULL 值,尽管可能会为新创建数组写入保留异常(例如, ufunc 代码输出数组)。...此外,没有模块初始化子例程文件包含 numpy/arrayobject.h 之前,定义NO_IMPORT_ARRAY。...模块初始化例程,调用 import_array。此外,不具有模块初始化子例程文件包含 numpy/arrayobject.h 之前定义 NO_IMPORT_ARRAY。

    7910

    fortran数组

    本文由知乎答主木子穿叶提供 在前三篇笔记,学习了Fortran作为一个编程语言,最基本内容:变量,输入输出,流程控制和程序结构。...注意,Fortran字符集不包括括号[],因此与c语言风格不同,Fortran对数组分量操作全都是使用小括号()。...可以使用其他语法进行数组声明,Fortran 77没有双冒号,而且需要两条命令分别确定数组元素类型和数组尺寸。 ! 基本用法 integer :: a(10) !...或者直接deallocate(a) 固定尺寸数组和动态数组本质区别,就像c/c++一样:固定尺寸数组栈上分配内存,不需要手动释放;动态数组堆上分配内存,需要手动释放,相比于栈可使用空间更多...对大规模数据存储需求,倾向于主程序中使用动态数组,由主程序负责分配和释放。 注:之前笔记遗漏了一部分——显式指定参数,以改变多个参数匹配顺序。

    51610

    【STM32F407DSP教程】第13章 DSP快速计算函数-三角函数和平方根

    为了验证结果是否正确,我们可以将这些数据保存到txt文件,复制这256个数据即可,然后保存并关闭文件。...通过matlab加载这个txt文件,加载方法如下: 加载保存好数据txt文件(特别注意输出类型选择列向量): 然后点击右上角那个绿色对勾,会提示变量已经导入: 然后再看工作区(Workspace)就能看到添加数组变量了...: 现在我们通过matlabplot功能绘制下这些数据,VarName1地方右击鼠标,选择plot 绘制后结果如下: 从波形上看基本是一个周期cos函数曲线。...*/ /* 进入主程序循环体 */ while (1) { bsp_Idle(); /* 这个函数bsp.c文件。...*/ /* 进入主程序循环体 */ while (1) { bsp_Idle(); /* 这个函数bsp.c文件

    93910

    【STM32F429DSP教程】第13章 DSP快速计算函数-三角函数和平方根

    为了验证结果是否正确,我们可以将这些数据保存到txt文件,复制这256个数据即可,然后保存并关闭文件。...通过matlab加载这个txt文件,加载方法如下: 加载保存好数据txt文件(特别注意输出类型选择列向量): 然后点击右上角那个绿色对勾,会提示变量已经导入: 然后再看工作区(Workspace)就能看到添加数组变量了...: 现在我们通过matlabplot功能绘制下这些数据,VarName1地方右击鼠标,选择plot 绘制后结果如下: 从波形上看基本是一个周期cos函数曲线。...*/ /* 进入主程序循环体 */ while (1) { bsp_Idle(); /* 这个函数bsp.c文件。...*/ /* 进入主程序循环体 */ while (1) { bsp_Idle(); /* 这个函数bsp.c文件

    88430

    NumPy 1.26 中文文档(五)

    默认减少数据类型与 self 数据类型相同。 为了避免溢出,执行较大数据类型计算减少可能是有用。 对于几种方法,还可以提供可选 out 参数,并且结果将放入给定输出数组。...默认缩减数据类型与self数据类型相同。 为了避免溢出,使用更大数据类型执行缩减操作可能很有用。 对于一些方法,还可以提供可选out参数,并将结果放入给定输出数组。...ndarray.tofile(fid[, sep, format]) 将数组作为文本或二进制(默认)写入文件。 ndarray.dump(file) 将数组 pickle 转储到指定文件。...默认缩减数据类型与self数据类型相同。为避免溢出,执行缩减时使用较大数据类型可能会很有用。 对于几种方法,还可以提供一个可选out参数,并将结果放入给定输出数组。...属性: C_CONTIGUOUS © 数据一个单一、符合 C 风格连续段。 F_CONTIGUOUS (F) 数据一个单一、符合 Fortran 风格连续段

    10510
    领券