Fortran90数组编程作业.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数组--程序设计作业 数组是 FORTRAN90 最重要的结构数据类型之一。许多实际问题往往设计大量的数据, 数组是存储和处理大批量数据的有效工具,有些问题如果不用数组求解将难以解决。 数组是类型相同且有序的一组数据,涉及到这类数据均可考虑使用数组。 本次实验是学习和掌握数组声明、数组元素引用、数组输入输出、数组赋初值的一次 系统实验活动。通过本次实验,能够设计和编写比较简单的数组应用程序。 一.实验内容 1 1.问题描述 已知 10 个正整数:10、55、25、70、45、15、25、85、45、35,输入一个待删除整数, 在 10 个整数中查找,若有该整数,则将其删除,输出删除前后这组整数。编写程序实现之。 2.算法设计 已知的 10 个正整数符合数组定义,用一维整型数组 num 保存,用数组构造器赋初值。 待删除整数 n 从键盘输入。 算法基本思想:输入待删除整数,从第 1 个数组元素 num(1)开始,依次用 n 去比较是 否相等,若相等查找成功,将该数组元素删除(在该数组元素位置设置删除标志),直到第 10 个数组元素检查比较完毕。输出删除前后数组元素。 因 10 个整数为正数,所以删除标志可用-1 表示。 算法: 输入待删除整数 n; 输出删除前10个整数; 用 n 依次在数组元素 num(1)、num(2)、… 、num(10)中查找,查找成功置删除标 志; 输出删除后数据。 结束 算法第 3 步可用“计数型”循环结构和 DO 循环语句实现。 3.程序编写 根据算法,设计和编写不完整示例程序如下(请在下划线空白处填充正确内容): 程序 8-1: ? !班级:??? -59- !姓名:??? !时间:??? !数据查询 PROGRAM problem01 INTEGER :: num(10)=( ),n ? PRINT*,‘请输入 100 以内的一个正整数: ’ READ*,n PRINT*,‘删除前数据: ’ WRITE(*,100) (num(I), ) DO I=1,10 ? IF (n==num(I)) num(I)=-1 ENDDO PRINT* PRINT*,‘删除后数据: ’ ? DO I= ? IF ( ) WRITE(*,100) num(I) ENDDO PRINT* 100 FORMAT((I3,2X\)) END 4.实验要求 分析问题,理解算法和程序,将程序填写完整。 掌握数组声明、数组构造器、隐含 DO 循环基本概念和使用规则。 将输入数据和输出结果以注释形式编辑输入到源程序文件末尾。 (下次上机试验)改写程序,提高通用性(正整数个数不定,且从键盘输入,数组元 素最大个数 max 通过 PARAMETER 语句定义)。运行输入几组不同数据,获得不同运行 结果。 5.实验步骤 分析问题,理解算法和程序,完成程序填空,得到正确完整程序。 启动软件开发环境 Microsoft Developer Studio。 编译、构建、运行、调试程序。运行时输入数据 45,得到输出结果。 将输入数据和输出结果以注释形式编辑输入到源程序文件末尾。 二.实验内容 2 1.问题描述 -60- 输入一个班学生(人数≤40)的学号和 3 门课(英语、数学、物理)成绩,计算每个学生 平均成绩、每门课平均成绩和三门课平均成绩,统计高于每门课平均成绩和三门课平均成 绩的学生人数和占总人数比例,输出统计结果。编写程序实现之。 2.算法设计 问题中涉及一个班级的学生学号、3 门课成绩和学生平均成绩,这些数据符合数组定义, 用五个数组存储这些数据。定义以下五个数组: numbers:字符型数组,存储学生学号。从键盘输入。 englishs:整型数组,存储英语成绩。 maths:整型数组,存储数学成绩。从键盘输入。 physics:整型数组,存储物理成绩。从键盘输入。 averages:实型数组,存储学生平均成绩。计算获得。 计算获得英语平均成绩 english_av、数学平均成绩 math_av、物理平均成绩 physic_av 和三门课平均成绩 average,均为实型。 从键盘输入学生人数 n。 统计高于英语平均成绩人 n1 和比例 p1,高于数学平均成绩人 n2 和比例 p2,高于物理 平均成绩人 n3 和比例 p3,高于三门课平均成绩人 nn 和比例 pp。 求解算法比较简单,设计算法如下: 输入学生人数 n; 采用“计数型”循环结构输入学生学号和三门课成绩,同时计算学生平均成绩,统 计英语、数学、物理课总成绩; 计算英语、数学、物理课平均成绩和三门课平均成绩; 采用“计数型”循环结构统计高于平均成绩人数及比例 输出统计结果 结束 3.程序编写 根据算法,设计和编写不完整示例程序如下(请在下划线空白处填充正确内容

文档评论(0)

xiaoluping2000 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档