fortan实验八 数组(一).doc

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
fortan实验八 数组(一)

实验八 数组(一) 数组是FORTRAN90最重要的数据类型之一。许多实际问题往往涉及大量的数据,数组是存储和处理大批量数据的有效工具,有些问题如果不用数组求解将难以解决。 数组是类型相同且有序的一组数据,涉及到这类数据均可考虑使用数组。 本次实验是学习和掌握数组声明、数组元素引用、数组输入输出、数组赋初值的一次系统实验活动。通过本次实验,能够设计和编写比较简单的数组应用程序。 一.实验目的 理解数组概念。 掌握数组声明、数组元素引用、数组输入输出和数组赋初值的使用规则。 掌握数组构造器和隐含DO循环概念和使用。 掌握数组逻辑结构、存储结构及其相互关系。 掌握设计和编写简单数组应用程序的基本方法和技能。 二.实验内容1 1.问题描述 已知10个正整数:10、55、25、70、45、15、25、85、45、35,输入一个待删除整数,在10个整数中查找,若有该整数,则将其删除,输出删除前后这组整数。编写程序实现之。 2.算法设计 已知的10个正整数符合数组定义,用一维整型数组num保存,用数组构造器赋初值。待删除整数n从键盘输入。 算法基本思想:输入待删除整数,从第1个数组元素num(1)开始,依次用n去比较是否相等,若相等,则查找成功,将该数组元素删除(在该数组元素位置设置删除标志),直到q全部数组元素检查比较完毕。输出删除前后整数。因整数为正数,所以删除标志可用-1表示。 算法: 输入待删除整数n; 输出删除前10个整数; 用n依次在数组元素num(1)、num(2)、… 、num(10)中查找,查找成功置删除标志; 输出删除后数据。 结束 算法第3步可用“计数型”循环结构和DO循环语句实现。 3.程序编写 设计和编写程序如下(不完整,请在下划线空白处填充正确内容): !班级:??? !姓名:??? !日期:??? !数据查询 PROGRAM problem01 INTEGER :: num(10)=(/12,56,85,19,35,10,89,64,78,91/),n PRINT*, 请输入100以内的一个正整数: READ*,n PRINT*,删除前数据: WRITE(*,100) (num(I), i=1,10 ) DO I=1,10 IF (n==num(I)) num(I)=-1 ENDDO PRINT* PRINT*,删除后数据: DO I= 1,10 IF (num(i)/=-1) WRITE(*,100) num(I) ENDDO PRINT* 100 FORMAT((I3,2X\)) END 4.实验要求 分析问题,理解算法和程序,将程序填写完整。 掌握数组声明、数组构造器、隐含DO循环基本概念和使用规则。 在D盘上创建新工作区:shiyan08和新项目:xm81。 在项目xm81内创建源程序文件:xm81.f90,同时在文件中编辑输入给定程序。 在项目xm81内编译、构建、运行、调试程序。 将输入数据和输出结果以注释形式编辑输入到源程序文件xm81.f90末尾。 改写程序,提高通用性(正整数个数不定,且从键盘输入,数组元素最大个数max通过PARAMETER语句定义)。运行输入几组不同数据,获得不同运行结果。 5.实验步骤 分析问题,理解算法和程序,完成程序填空,得到正确完整程序。 启动软件开发环境Microsoft Developer Studio。 在D盘上创建新工作区:shiyan08。 在工作区shiyan08内创建新项目:xm81。 在项目xm81内创建源程序文件xm81.f90,编辑输入源程序文本。 编译、构建、运行、调试程序。运行时输入数据45,得到输出结果。 将输入数据和输出结果以注释形式编辑输入到源程序文件末尾。 在工作区shiyan08内创建新项目:xm811,在新项目内创建源程序文件xm811.f90,编辑输入已改写程序。编译、构建、运行、调试程序。输入自定的几组数据,获得输出结果。 三.实验内容2 1.问题描述 输入一个班学生(人数≤40)的学号和3门课(英语、数学、物理)成绩,计算每个学生平均成绩、每门课平均成绩和三门课平均成绩,统计高于每门课平均成绩和三门课平均成绩的学生人数和占总人数比例,输出统计结果。编写程序实现之。 2.算法设计 问题中涉及一个班级的学生学号、3门课成绩和学生平均成绩,这些数据符合数组定义,用五个数组存储这些数据。定义以下五个数组: numbers:字符型数组,存储学生学号。从键盘输入。 englishs:整型数组,存储英语成绩。 maths:整型数组,存储数学成绩。从键盘输入。 physics:整型数组,存储物理成绩。从键盘输入。 averages:实型数组,存储学生平均成绩。计算获得。 计算获得英语

文档评论(0)

liwenhua11 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档