1.建议程序总体格式: 

  program ex1.
...
end progr

2.想要打出 My name is "xdd".

 write(*,*)" My name is "xdd"."

3.声明类型 标识符 字符串处理

  • 默认为长整形 单精度浮点数(kind=4)
  • Fortran中不区分大小写,所以变量名A、a表示同一变量
  • 返回字符串长度:len(str)
  • 返回字符串去处空格后的长度:trim(str)
  • 连接两个字符串:c=str1//str2  !使用两个/即可连接字符串
  • index(str1,str2) !返回str2在str1中首次出现的位置
 integer a 或 integer::a
real b 或 real::b
real(kind=) c 或 real(kind=8)::c
4 complex a 或 complex::a 或 complex(kind=8)::a
5 a=(1.0,2.0) !a=1+2
6 character ::a (a是一个字符) 或 character(len=10)::a 或 character(10)::a !所有::均可省略
7 a="xieshg" !fortran90 对于字符串,单双引号均可
8 logical::a
9 a=.true.  !注意有两个点

4.输入输出(write,read)

  • 如用format,一定要放好位置
program ex
integer::a
real::b
a=
write(*,) a
write(*,) b
format (I4) !用4列显示整数a
format(F10.) !输出数据占10列,小数部分占6列
end program !write(*,"(1X,I5)") a
!write(*,"3(1X,I5)") a,b,c
!write(*,"(I5)") b
!write(*,"(A5)") str   !以5个字符宽度输出字符串
!write(*,"(E10.6)") a  !以指数格式输出,一共占10位,小数部分占6位
/              !换行
program ex0622
character(len=) str
read(*,"(A80)"),str   !有长度这样可以避免逗号使机器读取数据结束
write(*,"(A80)"),str
end program

5.变量先声明后使用,虽然麻烦一些,但可避免许多错误,尤其是输入错误,而且还不会报错!所以取消默认很重要。

implicit none     !关闭默认类型功能,所有变量的使用都要事先定义
  • 声明常量,能减少编写错误的机会,增加计算机执行速度
  • 变量赋初值时冒号也不能省略
  • Fortran77赋初值时,只能用DATA
  • 所有的变量声明都要在执行语句的前面,一旦开始执行就不能再有声明
real,parameter::pi=3.1415926    !此处冒号不能省略
real::c=2.1    !此处冒号不能省略 !Fortran77
integer a
real b
complex c
character(len=10) d
data a,b c d /1,2.0,(1.0,2.0),'xiedd'/ !Fortran77字符串要用单引号

6.变量类型自定义(a%name) 见《Fortran 95 程序设计》P65 彭国伦老师著

7.kind的使用

kind的使用
integer(kind=2) -32768~32767
integer(kind=4) -2147483648~2147483647
real(kind=4) ±1.18*10-38-±3.40*1038
real(kind=8) ±2.23*10-308-±1.79*10308
 !判断可以记录9个位数的整数的kind值
integer,parameter::long_int=selected_int_kind()
!判断可以有10个有效位数,指数可以记录到50的浮点数kind值
integer,parameter::long_real=selected_real_kind(,) integer(kind=long_int)::a=
real(kind=long_real)::b=.23456789D45

write by xdd  2019-09-19  15:48:15


Fortran输入输出与声明--xdd的更多相关文章

  1. Fortran数组、函数--xdd

    1.数组的声明 integer,parameter::num= integer::student(num) 或者 integer a() 或者 integer a(,) student()= !第一个 ...

  2. FORTRAN程序设计权威指南

    <FORTRAN程序设计权威指南> 基本信息 作者: 白海波    出版社:机械工业出版社 ISBN:9787111421146 上架时间:2013-7-23 出版日期:2013 年7月 ...

  3. 第一周—Fortran语言学习

    使用教材:Fortran95程序设计[彭国伦] 第二章 编译器的使用 编译结果的好坏 1.翻译正确 2.执行文件的运行效率 3.翻译出来的执行码的长短 4.编译过程花费的时间 5.编译器提供Debug ...

  4. Fortran学习笔记5(数组Array)

    数组的声明方式 一维数组 二维数组 多维数组 数组索引值的改变 自定义类型的数组定义 对数组内容的设置 利用隐含式循环设置数组初值 对整个数组操作 对部分数组的操作 where函数 Forall函数 ...

  5. RTTI(Runtime Type Information )

    RTTI 是“Runtime Type Information”的缩写,意思是:运行时类型信息.它提供了运行时确定对象类型的方法.本文将简略介绍 RTTI 的一些背景知识.描述 RTTI 的概念,并通 ...

  6. scanf函数和printf函数

    C程序实现输出和输入的 主要是printf函数 和 scanf函数,这两个函数是格式输入输出 格式声明由%和格式字符组成 如%d,%f 格式字符:  d格式符:用来输出一个有符号的十进制整数  c格式 ...

  7. 201621123060 《Java程序设计》第五周学习总结

    1. 本周学习总结 1.1 写出你认为本周学习中比较重要的知识点关键词 继承.多态.抽象类与接口 1.2 尝试使用思维导图将这些关键词组织起来.注:思维导图一般不需要出现过多的字. 2. 书面作业 作 ...

  8. ZT --- extern "C"用法详解 2010-08-21 19:14:12

    extern "C"用法详解 2010-08-21 19:14:12 分类: C/C++ 1.前言: 时常在cpp的代码之中看到这样的代码: #ifdef __cplusplus ...

  9. 卷积神经网络CNN原理以及TensorFlow实现

    在知乎上看到一段介绍卷积神经网络的文章,感觉讲的特别直观明了,我整理了一下.首先介绍原理部分. [透析] 卷积神经网络CNN究竟是怎样一步一步工作的? 通过一个图像分类问题介绍卷积神经网络是如何工作的 ...

随机推荐

  1. Robot Framework——对时间操作的datetime库常用关键字

    1.对固定日期进行操作,增加或减去单位时间或者时间段 2.对两个时间段进行操作 3.对时间格式转化,获取时间戳 4.从完整时间中取指定年月日等 5.对时间类型进行格式化 6.获取当前时间或者指定时区时 ...

  2. Django中ORM的优化

    1. exists( ) 什么时候用 count( ) 和 len( )什么时候合适, 用values( )或values_list( )只取需要的列的数据 iterator()对数据对象生成迭代器, ...

  3. Oracle ADG环境搭建

    部署 环境介绍 1,软件安装前基础部署 (两台做同样操作) 1.1,关闭selinux和防火墙 因为centos7里面没有/etc/sysconfig/iptables这个配置文件所以我们首先用yum ...

  4. MySQL计划任务(事件调度器)

    原文:http://www.cnblogs.com/c840136/articles/2388512.html 备忘; MySQL5.1.x版本中引入了一项新特性EVENT,顾名思义就是事件.定时任务 ...

  5. 键盘常见ascii码值

    回车事件最常见,码值13 ESC键: VK_ESCAPE (27) 回车键: VK_RETURN (13) TAB键: VK_TAB (9) Caps Lock键: VK_CAPITAL (20) S ...

  6. 《JavaScript设计模式与开发实践》-- 发布-订阅模式

    详情个人博客:https://shengchangwei.github.io/js-shejimoshi-fabudingyue/ 发布-订阅模式 1.定义 发布-订阅模式:发布-订阅模式又叫观察者模 ...

  7. Docker应用部署

    MySQL: #拉取mysql镜像 docker pull centos/mysql--centos7 #创建容器 #-p 端口映射 -e添加环境变量MYSQL_ROOT_PASSWORD 是root ...

  8. C语言1作业5

    问题 答案 这个作业属于那个课程 C语言程序设计1 这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-2 我在这个课程的目的是 学习并掌握C ...

  9. [考试反思]1024csp-s模拟测试86:消耗

    %%%两个没素质的和一个萌两小时AK 最近貌似总是可以比较快速的拿下T1,然后T2打到考试结束... T1是套路题没什么好说的. T2是一个比较蠢的博弈题,我花了很长时间干各种乱七八糟的事 什么打表啊 ...

  10. 大厂面试经:说一下你们线上JVM是如何优化的?

    JVM(Java虚拟机)简单来说就是运行Java代码的解释器,作为螺丝钉程序员JVM其实了解下就差不多啦,不懂JVM内部细节照样能写出优质的代码!但是一到造火箭.飞机的场景(面试)不懂JVM的你,会被 ...