Fortran输入输出与声明--xdd
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的使用
| 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的更多相关文章
- Fortran数组、函数--xdd
1.数组的声明 integer,parameter::num= integer::student(num) 或者 integer a() 或者 integer a(,) student()= !第一个 ...
- FORTRAN程序设计权威指南
<FORTRAN程序设计权威指南> 基本信息 作者: 白海波 出版社:机械工业出版社 ISBN:9787111421146 上架时间:2013-7-23 出版日期:2013 年7月 ...
- 第一周—Fortran语言学习
使用教材:Fortran95程序设计[彭国伦] 第二章 编译器的使用 编译结果的好坏 1.翻译正确 2.执行文件的运行效率 3.翻译出来的执行码的长短 4.编译过程花费的时间 5.编译器提供Debug ...
- Fortran学习笔记5(数组Array)
数组的声明方式 一维数组 二维数组 多维数组 数组索引值的改变 自定义类型的数组定义 对数组内容的设置 利用隐含式循环设置数组初值 对整个数组操作 对部分数组的操作 where函数 Forall函数 ...
- RTTI(Runtime Type Information )
RTTI 是“Runtime Type Information”的缩写,意思是:运行时类型信息.它提供了运行时确定对象类型的方法.本文将简略介绍 RTTI 的一些背景知识.描述 RTTI 的概念,并通 ...
- scanf函数和printf函数
C程序实现输出和输入的 主要是printf函数 和 scanf函数,这两个函数是格式输入输出 格式声明由%和格式字符组成 如%d,%f 格式字符: d格式符:用来输出一个有符号的十进制整数 c格式 ...
- 201621123060 《Java程序设计》第五周学习总结
1. 本周学习总结 1.1 写出你认为本周学习中比较重要的知识点关键词 继承.多态.抽象类与接口 1.2 尝试使用思维导图将这些关键词组织起来.注:思维导图一般不需要出现过多的字. 2. 书面作业 作 ...
- ZT --- extern "C"用法详解 2010-08-21 19:14:12
extern "C"用法详解 2010-08-21 19:14:12 分类: C/C++ 1.前言: 时常在cpp的代码之中看到这样的代码: #ifdef __cplusplus ...
- 卷积神经网络CNN原理以及TensorFlow实现
在知乎上看到一段介绍卷积神经网络的文章,感觉讲的特别直观明了,我整理了一下.首先介绍原理部分. [透析] 卷积神经网络CNN究竟是怎样一步一步工作的? 通过一个图像分类问题介绍卷积神经网络是如何工作的 ...
随机推荐
- MySQL基础篇(1)SQL基础
SQL是Structure Query Language(结构化查询语言)的缩写,它是使用关系模型的数据库应用语言. 一.SQL分类(DDL,DML,DCL) DDL(Data Definition ...
- js更高文档的样式
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- Dubbo配合SpringBoot,实现接口多个实现(group)
SpringBoot配合Dubbo,使用@Service和@Reference,group实现接口多实现 公司项目升级,需要实现springBoot + Dubbo,并支持一个接口多个实现的情况.遇到 ...
- 设计模式C++描述----07.建造者(Builder)模式
一. 概述 Builder 模式要解决的问题是:当我们要创建的对象很复杂的时候(通常是由很多其他的对象组合而成),我们要要复杂对象的创建过程和这个对象的表示(展示)分离开 来,这样做的好处就是通过一步 ...
- 2018.8.3 python中的set集合及深浅拷贝
一.字符串和列表的相互转化 之前写到想把xx类型的数据转化成yy类型的数据,直接yy(xx)就可以了,但是字符串和列表的转化比较特殊,相互之间的转化要通过join()和split()来实现. 例如: ...
- (IDEA) 搭建Maven并使用Maven打包部署
1.配置Maven的环境变量 a.首先我们去maven官网下载Maven程序,解压到安装目录,如图所示: b.配置M2_HOME的环境变量,然后将该变量添加到Path中 备注:必须要有JAVA_HOM ...
- VBoxManage.exe: error: Failed to instantiate CLSID_VirtualBox w/ IVirtualBox, CL SID_VirtualBox w/ IUnknown works.
我先把vagrantbox卸载了 重新装了一个 然后提示这个错误 当时我一脸蒙逼 后来经过百度 1, win+r 快捷键打开 “运行”,输入regedit 打开注册表 2,找到 HKEY_CLASSE ...
- 配置Docker镜像加速
1.在docker toolbox执行下面的命令进入VM bash docker-machine ssh default 2.执行下面的命令修改profile文件: sudo vi /var/lib/ ...
- 【原创】基于.NET的轻量级高性能 ORM - TZM.XFramework 之让代码更优雅
[前言] 大家好,我是TANZAME.出乎意料的,我们在立冬的前一天又见面了,天气慢慢转凉,朋友们注意添衣保暖,愉快撸码.距离 TZM.XFramework 的首秀已数月有余,期间收到不少朋友的鼓励. ...
- Function:凸包,单调栈,题意转化,单峰函数三分,离线处理
很难啊啊啊!!! bzoj5380原题,应该可以粘题面. 问题转换: 有一个n列1e9行的矩阵,每一列上都写着相同的数字Ai. 你从位置(x,y)出发每一步可以向左上方或左方走一步,最后走到第一行. ...