FORTRAN完全自学手册的第三篇高级语法篇
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.3DATA语句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.10Fortran90/95的数组操作语句176
9.10.1WHERE语句和WHERE构造177
9.10.2FORALL语句181
第10章Fortran程序单元
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.1ENTRY语句与多入口点199
10.5.2子程序的多折返点201
10.6Fortran90/95中的特殊子程序类型203
10.6.1RECURSIVE属性203
10.6.2PURE属性206
10.6.3ELEMENTAL属性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.4INTENT属性应用220
10.8.5关键字变元222
10.8.6可选择变元与OPTIONAL属性223
10.8.7哑元改名225
10.8.8INTRINSIC属性226
10.8.9数组作为参数227
10.8.10过程作为参数232
10.9局部变量和SAVE属性235
10.9.1变量的作用范围235
10.9.2SAVE属性237
第11章高级输出与输入
11.1输入输出语句的格式化设置241
11.2输入输出语句与格式语句242
11.2.1WRITE语句引用格式说明语句242
11.2.2PRINT语句引用格式说明语句242
11.2.3READ语句引用格式说明语句242
11.2.4第1个输入输出综合应用243
11.3格式编辑符概述245
11.4数据格式编辑符245
11.4.1I编辑符245
11.4.2F编辑符246
11.4.3E编辑符247
11.4.4D编辑符248
11.4.5A编辑符249
11.4.6L编辑符249
11.4.7G编辑符250
11.4.8B、O、Z编辑符251
11.4.9EN、ES编辑符252
11.5控制格式编辑描述符253
11.5.1X编辑符253
11.5.2纵向走纸控制符254
11.5.3斜杠编辑符255
11.5.4T、TL和TR编辑符256
11.5.5冒号编辑符257
11.5.6P编辑符257
11.5.7SP、SS和S编辑符258
11.5.8BN、BZ编辑符258
11.6字符串编辑符259
11.6.1撇号编辑符259
11.6.2H编辑符260
11.7编译器扩展的格式编辑描述符260
11.7.1反斜杠“\”编辑符和美元“$”编辑符260
11.7.2可变格式编辑符261
11.8I/O列表262
11.8.1NAMELIST语句262
11.8.2I/O列表实体266 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.2OPEN语句274
12.3.3CLOSE语句278
12.3.4OPEN语句和CLOSE语句示例279
12.3.5READ和WRITE语句280
12.3.6REWIND语句283
12.3.7BACKSPACE语句283
12.3.8ENDFILE语句284
12.3.9INQUIRE语句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.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