FORTRAN完全自学手册(编程红宝书)(附赠CD-ROM光盘一张)
分類: 图书,计算机与互联网,程序语言与软件开发,语言与开发工具,综合,
品牌: 陈科
基本信息·出版社:机械工业出版社
·页码:441 页
·出版日期:2009年
·ISBN:7111256336/9787111256335
·条形码:9787111256335
·包装版本:1版
·装帧:平装
·开本:16
·正文语种:中文
·丛书名:编程红宝书
·附带品描述:附赠CD-ROM光盘一张
产品信息有问题吗?请帮我们更新产品信息。
内容简介《FORTRAN完全自学手册》内容包括FORTRAN起源及发展、FORTRAN语法基础、简单输入与输出、常量和变量、种别和属性、常用内部过程、运算符及表达式、程序流程控制、FORTRAN中的数组、FORTRAN程序单元、高级输出与输入、文件操作、FORTRAN指针等内容。基本上涵盖了FORTRAN语言的方方面面。为便于读者进一步加深对FORTRAN语言的理解和应用,《FORTRAN完全自学手册》最后几章专门列举了一些FORTRAN的应用实例,具体讲解了常用数值算法、文件处理、搜索与排序等内容。
FORTRAN是一门在数值计算领域有着重要用途的高级计算机语言。《FORTRAN完全自学手册》深入浅出、循序渐进地向读者讲述如何使用FORTRAN进行程序开发。
《FORTRAN完全自学手册》适合广大科研院所的科研和工程人员、从事软件开发的程序员和工科大专院校的学生阅读,对于已经熟悉FORTRAN语言的人员也具有一定的参考价值。
编辑推荐《FORTRAN完全自学手册》特色:
涵盖基础知识、核心技术、典型示例等内容。
按照“基本概念→核心语法→典型示例”的模式讲解,容易上手。
提供200余个典型实例,讲述FORTRAN语言关键技术
超值光盘内容:
《FORTRAN完全自学手册》源代码+《FORTRAN完全自学手册》视频演示+《FORTRAN完全自学手册》电子教案(PPT)
1200余页编程技术文档(免费赠送)+45个编程专题视频讲座(免费赠送)
《FORTRAN完全自学手册》重点内容概览:
由点到面,详细介绍FORTRAN的语法结构和编程特点;突出操作,通过实际输出来加强对语句行为的理解;配合视频,介绍了常用FORTRAN编程工具的操作和实用;范例丰富,演示了FORTRAN语言中关键语句的使用和特点;深入应用,专门讲解常见数值计算方法和混合编程的实现。
作者均为有多年编程经验的一线程序员或者培训讲师
提供了专门的技术服务论坛:
Http://www.rzcllina.net
光盘提供了源代码、视频演示、电子教案及编程技术文档
按“基本概念,语法讲解一示例讲解”的模式讲解,适合自学
概念都以简单的语言描述,必要时进行类比,容易理解
提供了大量实例,最后还提供了综合案例,比较实用
无论理论知识,还是实例,讲解都很详细,容易掌握
对代码进行了丰富的注释,阅读起来没有任何障碍
目录
写给自学编程的人员
前言
第一篇 概 述 篇
第1章 Fortran概述 1
1.1 Fortran起源 1
1.2 Windows下Fortran编译器的使用 2
1.2.1 安装Compaq Visual Fortran 2
1.2.2 创建第1个Fortran工程 3
1.2.3 在Fortran工程中添加源代码 5
1.2.4 在Fortran工程中新建源文件 7
1.2.5 在Compaq Visual Fortran中编译源文件 8
1.3 Linux下常见的Fortran编译器 10
1.4 常见编译器性能比较 12
1.5 常用编译器 12
1.5.1 UltraEdit 13
1.5.2 ZionEdit 14
1.5.3 gEdit 15
1.6 第1个Fortran程序—Hello! Fortran 90/95 16
第二篇 基础语法篇
第2章 Fortran语法基础 17
2.1 程序书写格式 17
2.1.1 固定格式(Fixed Format) 17
2.1.2 自由格式(Free Format) 19
2.1.3 兼顾两种格式的代码写法 21
2.2 字符集 21
2.3 空格的使用 22
2.4 注释格式 23
2.5 命名方式 24
2.6 程序单元和语句顺序 25
第3章 简单输入与输出 27
3.1 输入和输出概述 27
3.2 简单输出语句 27
3.2.1 PRINT语句的表控输出 28
3.2.2 WRITE语句的表控输出 28
3.2.3 表控输出的特点 29
3.3 简单输入语句 30
3.3.1 READ语句的表控输入形式一 31
3.3.2 READ语句的表控输入形式二 31
3.3.3 表控输入的特点 32
第4章 常量和变量 35
4.1 数值型常量及其类型 35
4.1.1 整型常量 35
4.1.2 实型常量 35
4.1.3 复型常量 36
4.1.4 常量的存储形式 36
4.1.5 符号常量 37
4.2 数值型变量及其类型 37
4.2.1 数值型变量概述 37
4.2.2 使用系统默认的隐含约定 38
4.2.3 使用类型说明语句声明 39
4.2.4 用隐含说明语句声明 39
4.2.5 数值型变量声明及其应用 40
4.3 字符型常量及变量 40
4.3.1 字符型变量概述 41
4.3.2 定义形式一 41
4.3.3 定义形式二 41
4.3.4 定义形式三 42
4.3.5 定义形式四 42
4.3.6 字符型变量声明及其应用 43
4.3.7 子字符串的概念 44
4.4 逻辑型常量及变量 45
4.5 变量的初始化 46
4.6 赋值语句 48
4.6.1 何为赋值 48
4.6.2 赋值过程的类型转换 49
第5章 种别和属性 51
5.1 种别概述 51
5.1.1 种别的概念 51
5.1.2 种别的使用 52
5.2 种别值和种别函数 52
5.2.1 整型数据的种别 52
5.2.2 实型数据的种别 53
5.2.3 复型数据的种别 53
5.2.4 逻辑型数据的种别 53
5.2.5 字符型数据的种别 53
5.2.6 种别函数 54
5.3 常数种别和进制 54
5.3.1 非字符型常数的种别说明 54
5.3.2 字符型常数的种别说明 56
5.3.3 数据的进制说明 56
5.4 属性说明 57
5.4.1 对象的属性 57
5.4.2 常用属性说明 58
第6章 常用内部过程 60
6.1 内部过程概述 61
6.2 常用数学函数 61
6.2.1 绝对值函数 61
6.2.2 指数函数 61
6.2.3 正弦函数 62
6.2.4 余弦函数 62
6.2.5 反正弦函数 62
6.2.6 反余弦函数 62
6.2.7 正切函数 63
6.2.8 反正切函数 63
6.2.9 自然对数函数 63
6.2.10 常用对数函数 63
6.2.11 取整函数 64
6.2.12 求余函数 64
6.2.13 取符号函数 64
6.2.14 最大值函数 65
6.2.15 最小值函数 65
6.3 常用字符函数 65
6.3.1 字符与数值转换函数 65
6.3.2 字符串长度函数 66
6.3.3 子字符串位置索引函数 66
6.3.4 字符串验证函数 67
6.3.5 尾部空格除去函数 67
6.3.6 字符大小比较函数 67
6.4 常用系统过程 68
6.4.1 CPU时间函数 68
6.4.2 日期和时间函数 68
6.4.3 系统时间过程 69
6.4.4 随机数生成过程 69
第7章 运算符及表达式 70
7.1 算术运算 70
7.1.1 算术运算符及其优先级 70
7.1.2 算术表达式 70
7.1.3 算术表达式中的类型转换 71
7.1.4 算术运算的误差 73
7.2 关系运算 74
7.2.1 关系运算符 74
7.2.2 关系表达式 75
7.3 逻辑运算 76
7.3.1 逻辑运算符 76
7.3.2 逻辑表达式 76
7.3.3 逻辑表达式的运算秩序 77
7.4 字符运算 77
第8章 程序流程控制 80
8.1 算法与流程 80
8.1.1 算法 80
8.1.2 传统流程图 81
8.1.3 基本程序结构 83
8.1.4 用伪代码表示算法 85
8.2 选择结构 87
8.2.1 判断语句IF和分支选择语句SELECT CASE 87
8.2.2 判断语句IF的基本用法 87
8.2.3 判断语句IF实现多重判断 90
8.2.4 IF语句的嵌套 93
8.2.5 IF语句的特殊用法 95
8.2.6 SELECT CASE语句的用法 97
8.2.7 SELECT CASE语句的应用 98
8.3 循环结构 103
8.3.1 基本的DO构造 103
8.3.2 无条件循环与DO语句 105
8.3.3 条件循环与DO构造 108
8.3.4 循环的署名 112
8.3.5 循环的嵌套 113
8.3.6 DO循环规则 115
8.3.7 隐式DO循环 116
8.4 循环的控制 117
8.4.1 EXIT语句 117
8.4.2 EXIT语句与条件循环 118
8.4.3 EXIT语句与无条件循环 120
8.4.4 CYCLE语句 121
8.5 再论GOTO语句 123
8.5.1 无条件GOTO语句 123
8.5.2 计算GOTO语句 125
8.5.3 赋值GOTO语句 125
8.5.4 GoTo语句的应用 126
8.6 程序结束、终止和暂停 127
8.6.1 程序结束(END) 127
8.6.2 程序终止(STOP) 128
8.6.3 程序暂停(PAUSE) 129
第三篇 高级语法篇
第9章 Fortran中的数组 133
9.1 数组的定义 133
9.1.1 定义形式一 133
9.1.2 定义形式二 134
9.1.3 定义形式三 134
9.1.4 定义形式四 134
9.1.5 数组定义的特点 135
9.2 数组的引用方式 135
9.2.1 引用数组元素 135
9.2.2 引用数组整体 136
9.2.3 引用数组片段 137
9.3 数组的存储 138
9.3.1 数组的存储结构 138
9.3.2 数组存储结构的应用 139
9.4 数组的类型 141
9.4.1 显形数组 141
9.4.2 特殊的显形数组—自动数组 142
9.4.3 特殊的显形数组—可调数组 143
9.4.4 显形数组的不足 145
9.4.5 假定形状数组 146
9.4.6 假定大小数组 146
9.4.7 延迟形状数组 148
9.5 数组的动态分配 150
9.5.1 自动数组与可分配数组 150
9.5.2 可分配数组的分配与释放 151
9.5.3 可分配数组的应用实例 152
9.6 数组赋值 153
9.6.1 数组赋值语句 154
9.6.2 数组构造器 155
9.6.3 DATA语句 157
9.7 数组的输入输出 160
9.7.1 一维数组的输入输出 160
9.7.2 二维数组的输入输出 161
9.7.3 其他高维数组的输入输出 162
9.8 数组的运算 163
9.8.1 算术运算 163
9.8.2 逻辑运算 166
9.8.3 关系运算 167
9.9 常用内在函数 168
9.9.1 内部基本函数 168
9.9.2 矩阵乘积函数 169
9.9.3 向量点乘函数 170
9.9.4 元素求和函数 170
9.9.5 元素连乘求积函数 171
9.9.6 数组大小查询函数 171
9.9.7 数组形状查询函数 172
9.9.8 数组合并函数 172
9.9.9 数组压缩函数 172
9.9.10 数组形状扩展和重构形函数 173
9.9.11 数组转置函数 173
9.9.12 去端移动函数 174
9.9.13 循环替换函数 175
9.9.14 最大值元素定位函数 175
9.10 Fortran 90/95的数组操作语句 176
9.10.1 WHERE语句和WHERE构造 177
9.10.2 FORALL语句 181
第10章 Fortran程序单元 185
10.1 主程序 185
10.2 语句函数 186
10.2.1 语句函数的定义 187
10.2.2 语句函数的引用 189
10.3 函数子程序 190
10.3.1 定义函数子程序 191
10.3.2 调用函数子程序 192
10.3.3 函数子程序示例—进制转换 192
10.3.4 函数子程序示例—分形 194
10.4 子例行子程序 196
10.4.1 定义子例行子程序 197
10.4.2 子例行子程序示例 198
10.5 子程序的多入口点和多折返点 199
10.5.1 ENTRY语句与多入口点 199
10.5.2 子程序的多折返点 201
10.6 Fortran 90/95中的特殊子程序类型 203
10.6.1 RECURSIVE属性 203
10.6.2 PURE属性 206
10.6.3 ELEMENTAL属性 206
10.7 数据块程序单元 208
10.7.1 定义数据块子程序 208
10.7.2 使用数据块子程序 208
10.7.3 数据块子程序示例 208
10.8 子程序的参数 209
10.8.1 参数传递规则 210
10.8.2 子程序的接口 213
10.8.3 接口块使用情况 219
10.8.4 INTENT属性应用 220
10.8.5 关键字变元 222
10.8.6 可选择变元与OPTIONAL属性 223
10.8.7 哑元改名 225
10.8.8 INTRINSIC属性 226
10.8.9 数组作为参数 227
10.8.10 过程作为参数 232
10.9 局部变量和SAVE属性 235
10.9.1 变量的作用范围 235
10.9.2 SAVE属性 237
第11章 高级输出与输入 241
11.1 输入输出语句的格式化设置 241
11.2 输入输出语句与格式语句 242
11.2.1 WRITE语句引用格式说明语句 242
11.2.2 PRINT语句引用格式说明语句 242
11.2.3 READ语句引用格式说明语句 242
11.2.4 第1个输入输出综合应用 243
11.3 格式编辑符概述 245
11.4 数据格式编辑符 245
11.4.1 I编辑符 245
11.4.2 F编辑符 246
11.4.3 E编辑符 247
11.4.4 D编辑符 248
11.4.5 A编辑符 249
11.4.6 L编辑符 249
11.4.7 G编辑符 250
11.4.8 B、O、Z编辑符 251
11.4.9 EN、ES编辑符 252
11.5 控制格式编辑描述符 253
11.5.1 X编辑符 253
11.5.2 纵向走纸控制符 254
11.5.3 斜杠编辑符 255
11.5.4 T、TL和TR编辑符 256
11.5.5 冒号编辑符 257
11.5.6 P编辑符 257
11.5.7 SP、SS和S编辑符 258
11.5.8 BN、BZ编辑符 258
11.6 字符串编辑符 259
11.6.1 撇号编辑符 259
11.6.2 H编辑符 260
11.7 编译器扩展的格式编辑描述符 260
11.7.1 反斜杠“\”编辑符和美元“$”编辑符 260
11.7.2 可变格式编辑符 261
11.8 I/O列表 262
11.8.1 NAMELIST语句 262
11.8.2 I/O列表实体 266
第12章 文件操作 267
12.1 文件与逻辑设备 267
12.1.1 逻辑设备 267
12.1.2 外部文件 268
12.1.3 内部文件 269
12.2 外部文件分类 271
12.2.1 有格式文件 272
12.2.2 无格式文件 272
12.2.3 编译器支持的二进制文件 272
12.2.4 顺序存取文件 273
12.2.5 直接存取文件 273
12.3 文件操作语句 273
12.3.1 操作语句概述 273
12.3.2 OPEN语句 274
12.3.3 CLOSE语句 278
12.3.4 OPEN语句和CLOSE语句示例 279
12.3.5 READ和WRITE语句 280
12.3.6 REWIND语句 283
12.3.7 BACKSPACE语句 283
12.3.8 ENDFILE语句 284
12.3.9 INQUIRE语句 285
12.4 文件存取 291
12.4.1 文件的构成—记录 291
12.4.2 记录的组合 294
12.5 有格式顺序存取文件 296
12.5.1 有格式顺序存取文件的创建 296
12.5.2 有格式顺序存取文件的查询 299
12.6 有格式直接存取文件 304
12.6.1 简单有格式直接存取文件的建立 305
12.6.2 复杂有格式直接存取文件的建立 306
12.6.3 有格式直接存取文件的查询 307
12.7 无格式顺序存取文件 309
12.8 无格式直接存取文件 311
12.8.1 无格式直接存取文件的创建 312
12.8.2 无格式直接存取文件与同类有格式文件的区别 312
12.9 二进制顺序存取文件 314
12.9.1 二进制文件的创建 315
12.9.2 二进制顺序存储文件的查询 315
12.10 二进制直接存取文件 321
12.10.1 二进制直接存取文件的创建 321
12.10.2 二进制直接存取文件的读取 322
12.11 硬件设备的使用 323
第13章 Fortran指针 325
13.1 指针的基本概念 325
13.1.1 定义指针 325
13.1.2 定义指针范例 325
13.2 指针的基本应用 326
13.2.1 指针的基本用途 326
13.2.2 指针与变量的关系 327
13.2.3 动态分配和释放指针空间 329
13.2.4 指针状态的查询和更改 330
13.2.5 指针分享存储空间 332
13.3 指针与数组 333
13.3.1 指针指向数组 334
13.3.2 动态分配指针数组 336
13.4 指针与过程 337
13.4.1 指针与过程的示例 337
13.4.2 在指针与过程中使用模块 340
13.5 指针的简单应用 341
13.6 指针与链表概述 344
13.7 单向链表 344
13.7.1 单向链表的基本概念 345
13.7.2 节点的定义 345
13.7.3 节点的引用 347
13.7.4 链表的建立 348
13.8 双向链表和环状链表 350
13.8.1 双向链表的建立 351
13.8.2 环状链表的建立 354
13.9 链表的基本操作 356
13.9.1 插入及删除操作 356
13.9.2 插入及删除操作实例 357
13.9.3 链表空间的释放 362
13.9.4 遍历、查找及更新 365
第四篇 应 用 篇
第14章 基本数值算法举例 373
14.1 常用数值积分算法 373
14.1.1 矩形法 374
14.1.2 梯形法 374
14.1.3 Simpson法 376
14.1.4 数值积分计算子程序的应用 378
14.2 简单线性代数问题 380
14.2.1 Gauss消去法求解线性方程组 380
14.2.2 Gauss Jordan消去法求解线性方程组 384
14.3 非线性函数求解 387
14.3.1 迭代法 387
14.3.2 牛顿迭代法 388
14.3.3 二分法 390
14.3.4 弦截法 392
14.3.5 非线性函数求解子程序的应用 394
14.4 常微分方程的基本解法 400
14.5 插值与拟合 406
14.5.1 拉格朗日多项式插值法 407
14.5.2 牛顿前向插值法 409
第15章 文件处理举例 414
15.1 临时文件的应用 414
15.1.1 主程序 414
15.1.2 随机数生成子程序 415
15.1.3 素数挑选和文件重写子程序 415
15.1.4 素数判断子程序 416
15.2 多个文件的处理 417
第16章 搜索与排序 420
16.1 搜索算法 420
16.1.1 顺序搜索 420
16.1.2 二分搜索 423
16.1.3 散列搜索 426
16.2 排序算法 429
16.2.1 冒泡法 429
16.2.2 选择排序法 433
16.2.3 快速排序法 436
……[看更多目录]
序言随着信息技术的飞速发展和数值模拟技术的进步,在工程和科学研究中越来越依赖计算机的数值模拟。在数值计算和模拟领域,Fortran语言是常青树。Fortran语言以其丰富的运算类型、灵活的数组操作、高效的运算速度,在科学研究和工程设计领域有着广泛的使用人群。同时,Fortran语言也是一门不断发展进步的语言,目前最流行的标准是Fortran 90/95,而最新的标准Fortran 2003也正在不断制定和完善中,相信不久就能够面世。
笔者在自身的大学和研究生时代,由于学习和研究的需要,对Fortran语
文摘第一篇概述篇
第1章 Fortran概述
作为一门诞生于20世纪50年代后半期的高级计算机语言,FORTRAN在这个c/c++、Java等新兴语言大行其道的时代仍然活跃在人们的视野之中。FORTRAN语言的长项在于数值计算,在科学研究和工程设计领域有着广泛的用途。在描述数学语言的自然性方面,FORTRAN同现存的其他高级语言相比有着明显的优势。对于科研工作者和工程技术人员而言,FORTRAN语言的易学性和易用性是公认的。
1.1FORTRAN起源
FORTRAN是英语中“公式(Formula)”和“翻译(Translation)”两个单词取前几个字母的缩写形式,意即“公式翻译”。FORTRAN主要面向科学研究、工程设计或企事业管理中经常遇到的能够用数学公式表达的数值计算问题。因为可以像抄写教科书里的公式一样书写数学表达式,它比用英文书写的自然语言更接近数学语言。这使得FORTRAN在科研和工程技术领域中拥有庞大的使用人群。FORTRAN语言是第一个被正式推广的高级计算机语言。在四十多年的发展历程中,它始终是数值计算领域所使用的主要语言。本小节主要介绍FORTRAN的起源。
第一代FORTRAN语言是在1954年提出来的,称为FORTRAN 1。它于1957年在IBM 704计算机上得以实现。其开发者巴科斯的目标是开发一种容易理解、简单易学又几乎能像汇编语言一样高效运行的计算机语言,他和他的团队在这一点上取得了极大的成功。但是这一计划在最初阶段并不被人们看好,这其中包括巴克斯的上司冯?诺依曼。
插图: