小编elf*_*mer的帖子

如何阅读fortran中的“输入”键

下面的 fortran 90 程序可以读入一个文本文件,然后在屏幕上打印出来。它有一个附加功能,当输出覆盖整个屏幕时,它会暂停并等待用户按回车键继续。目前我使用“PAUSE”来实现这个功能。但是我想知道在回车键中直接读取的方式。请提供你的智慧。我很感激!

program ex0905
  implicit none
  character(len=79)  :: filename
  character(len=79)  :: buffer
  integer, parameter :: fileid = 10
  integer :: status = 0,count=0
  logical alive
  character(len=1) :: c

  write(*,*) "Filename:"
  read (*,"(A79)") filename
  inquire( file=filename, exist=alive)

  if ( alive ) then
     open(unit=fileid, file=filename, &
         access="sequential", status="old")
  do while(.true.)
     read(unit=fileid, fmt="(A79)", iostat=status ) buffer
     if ( status/=0 ) exit
     !write(*,"(A79)") buffer
     count = count+1
     if (count<24) then
        write(*,"(A79)") buffer
     else
       !write(*,*) "Please type Enter to continue: "
       pause
       count=0 …
Run Code Online (Sandbox Code Playgroud)

fortran input

4
推荐指数
1
解决办法
5181
查看次数

如何在C中printf long double?

[更新]无论我使用lf,结果仍然是相同的Lf,llf...我正在使用代码块来编译和运行我的C程序.我正在使用GNU GCC编译器.

我尝试在不同的计算机上打印长双浮动类型,包括两个Windows和一个Mac,但事实证明它们都没有像我预期的那样工作.代码如下:

#include <stdio.h>
#include <stdlib.h>

int main()
{
    double d = 6.232345235;   //8 bytes
    long double ld = 5.5767458458;

    printf("%lf\n", ld);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

返回值是-0.000000或另一个非常大的负数,我现在不记得了.

任何帮助是极大的赞赏!:d

c double

4
推荐指数
1
解决办法
2万
查看次数

标签 统计

c ×1

double ×1

fortran ×1

input ×1