9数组 FORTRAN语言程序设计 教学课件.pptVIP

  • 2
  • 0
  • 约9.37千字
  • 约 28页
  • 2018-01-25 发布于浙江
  • 举报
9数组 FORTRAN语言程序设计 教学课件

* 第 九 章 数组 第 十 章 语句函数 第十二章 数据共用存储单元 和数据块子程序 第十三章 文件 第十一章 子程序 * 一、数组说明和数组元素的引用 real ia(10), nd(80:99), w(3,2) character*5 a(-1:7, -1:4) logical flag(1:4) dimension grade(0:1,0:2,0:3) integer grade ★ 数组必须先定义后使用,每个数组中的元素类型相同。 ★ 数组起名规则与变量相同,且不能与程序中的其他变量重名。 ★ 数组说明必须出现在所有可执行语句之前。 下界 上界 维说明 数组说明 * ★ 用dimension语句说明数组时,数组类型根据数组名遵 循I—N隐含约定,否则需用类型说明说明数组名。 ★ 除在输入输出语句中外,其它场合不允许对数组整体 (即数组名)进行操作,只能逐个操作数组元素。? ★ 引用数组元素时下标必须落在定义的范围内,下标可以 是能得出结果的表达式,对实型结果作取整处理。 * 二、数组的逻辑和存储结构 —— 按列存放!—— * integer a(2,3) do 10 i=1,2 do 20 j=1,3 read(*,*) a(i,j) 20 continue 10 continue do 30 i=1,3 do 40 j=1,2 write(*,100) a(j,i) 40 continue 30 continue 100 format(1x,3i4) end 三、数组的输入和输出 1. 利用do循环对数组输入和输出 read和write语句各执行 10次,每次重开一记录。 integer a(10) do 10 i=1,10 read(*,*) a(i) 10 continue do 20 i=10,1,-1 write(*,100) a(i) 20 continue 100 format(1x,10i4) end 按行输入按列打印! 输入输出一行一数。 * 2. 用数组名来输入输出数组 integer a(10) do 10 i=1,10 a(i)=i 10 continue write(*,100) a 100 format(1x, 10i4) end integer a(2,3) do 10 i=1,2 do 20 j=1,3 a(i,j)=i 20 continue 10 continue write(*,100) a 100 format(1x,3i4) end 按存放形式打印 即按列打印! integer a(10) do 10 i=1,10 a(i)=i 10 continue do 20 i=1,10,5 write(*,100) a(i),a(i+1), $ a(i+2),a(i+3),a(i+4) 20 continue 100 format(1x, 5i4) end 比较 * 3. 在输入输出中使用隐含do循环(推荐使用) integer a(10) do 10 i=1,10 a(i)=i 10 continue write(*,100) $$ (a(i),i=10,1,-1) 100 format(1x, 10i4) end integer a(2,3) do 10 i=1,2 do 20 j=1,3 a(i,j)=i 20 continue 10 continue write(*,100) $ ((a(i,j),j=1,3),i=1,2) 100 format(1x,3i4) end write(*,*)(a,b,I=1,3) 相当于 $ write(*,*)a,b,a,b,a,b 又比如 write(*,*)(I,I=1,10) 相当于 $ write(*,*)1,2,…,10 便于输入输出控制 * 四、使用data语句给数组赋初值 integer a,c,m(3),dt(3) data a,b,c/1,2.0,-3/, m/3*90/ data x/-1.0/, y/-2.0/, z/3.0/ data (dt(i),i=1,2)/2*-2/, dt(3)/-7/ 1. 变量表中可以是变量名、数组名、数组元素名和隐含do循环。 2. 初值表中只允许常量,不可以是表达式。 3. 变量表

文档评论(0)

1亿VIP精品文档

相关文档