- 1、本文档共26页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
FORTRAN章 8
Visual Fortran 90 程序设计;8.1 字符型数据基础;长度为字符的个数:
起止界不算
两个单撇号或双撇号算一个
空格为有效字符算一个;说明语句的写法;长度可为整型表达式,但要加括号
例: character(2)::a,b*(2+3)
有时可把长度值写成一个星号,但要加括号
Character(*)::CH,PARA
Character(2):: CH,PARA*(*)
使用范围:
(1)具有PARAMETER属性的字符常量
Character(*),parameter::para=‘FORTRAN_90’
字符串长度取对应的字符常量的长度。
(2)用字符变量作为虚元时,虚元的长度取对应实元的长度
虚元可以和任意长度的实元相结合,有利于提高子程序的通用性。
;8.1.2 字符子串;8.1.3 字符表达式与字符赋值语句;2、关系运算:
例:‘abc’‘ada’;字符型赋值语句;8.2 字符型数据的输入与输出;用户规定格式输入;例:
Character(3)::a,b,c
Read(*,fmt=‘(a3,a2,a4)’)a,b,c
如输入’123’,’1234’,’ 123’
则a值’12
B值3’
C值’12;表控格式输出语句:
CHARACTER(3)::A,B
……
PRINT*,A,B;8.3 字符型数组;8.4 用于字符处理的内在函数;;例8-4 用自定格式输入和输出字符型数据。(掌握数据输入格式)
如输入:FORTRAN;例8-5 从键盘上输入5个城市的名称(用汉语拼音表示),然后按从小到大的顺序排序。(排序算法同数值型)
输入:’Harbin’,’Shanghai’,’Anda’,’Beijing’,’Daqing’;习题8-3(1)输出*号图形
算法:引入LINE存放每一行的数据(长度为图形的第一列到最右)
LINE子串赋值
输出LINE
LINE回归为空串
;8.5.1 字符型数据作为函数过程变元
1.字符型变量作为虚元:
对应的实元必须是字符型变量、字符型数组元素、字符串常量或字符表达式等。
虚元必须在该子程序中说明其类型。
可采用固定长度,长度说明也可采用(*)。
例8-7 编写函数子程序,实现字符内在函数LEN_TRIM的功能。在主程序中输入一个字符串,对去掉尾部空格部分的字符子串中的字符逆序存放后输出。
输入:Good morning!
(1)去尾部空格算法:从右往左顺序查找非空格字符
(2)逆序算法:交换首尾对应元素
;FUNCTION LENTRIM(STRING)RESULT(LENTRIM_RESULT)
IMPLICIT NONE
CHARACTER(LEN=*),INTENT(IN)::STRING
INTEGER::LENTRIM_RESULT,I
LENTRIM_RESULT=0
DO I=LEN(STRING),1,-1
IF(STRING(I:I)/=’ ’)THEN
LENTRIM_RESULT=I
EXIT
ENDIF
ENDDO; END
;PROGRAM CHAR_INVERSE
IMPLICIT NONE
CHARACTER(20)::STRING1,C*1
INTEGER::I,K,LENTRIM
READ’(A)’,STRING1
K=LENTRIM(STRING1)
DO I=1,K/2
C=STRING1(I:I)
STRING1(I:I)= STRING1(K-I+1:K-I+1)
STRING1(K-I+1:K-I+1)=C
ENDDO; PRINT*,STRING1; END
;2.字符型数组作为虚元
虚元是字符型数组时,对应的实元必须是字符型数组、数组元素或字符型数组元素的片段等。
若长度不一致时,则虚实数组的元素间并不是一一对应结合。而是按字符进行一个一个字符地相结合。
例如虚元a,长度为3,实元b长度为5,a,b虚实结合规则为:
FUNCTION F(A)RESULT(F—RESULT)
CHARACTER(3),DIMENSION(4)::A
主程序调用语句:K=F(B); CHARACTER(5),DIMENSION(4)::B;8.6 程序举例;例: 验证一字符串是否为“回文”。
算法: 去尾部空格
首尾对应字符比较
;DO I=1,J/2
IF(LINE(I:I)/=LINE(J-I+1:J-I+1))THEN
您可能关注的文档
- 2008版电影词汇的计算机科学引文.ppt
- 2009、第三级网络技术复习提纲(第1-8)和测试的知识点.doc
- 2008年7月,电子商务法简介.doc
- 2011,将高中语文试题分类为现代阅读。.doc
- 2009年7月服务支持质量分析(SMS).ppt
- 2012年3月10日在江苏省举行的第二套计算机信息考试(附答案).doc
- 2012年3月信息技术学术级模拟测试题(详细内容).doc
- 2010《饭锅维修手册》(新版).doc
- 2011、计算机级2 C程序设计及答案解析选择.doc
- 2012年5月国际贸易高级推销员考试试卷和答案.doc
- 高中语文与英语跨学科教学中的学习共同体构建与人工智能融合实证研究教学研究课题报告.docx
- 高中生物教学管理组织文化建设与生命科学素养教育策略创新研究教学研究课题报告.docx
- 《移动应用手势交互在智能农业管理系统中的用户体验研究》教学研究课题报告.docx
- 《基层医疗机构慢性病管理社区参与模式研究与实践效果》教学研究课题报告.docx
- 小学阶段校园周边文化活动对学生社会适应能力的影响教学研究课题报告.docx
- 基于教师教学画像的高中化学个性化辅导策略研究教学研究课题报告.docx
- 校园鸟类迁徙规律对城市生态系统影响的探究教学研究课题报告.docx
- 初中历史人物教育大数据隐私保护与人工智能教学设计教学研究课题报告.docx
- 《超高层建筑施工中风致振动控制技术的经济性分析》教学研究课题报告.docx
- 初中物理教学画像构建与物理教学资源推荐研究教学研究课题报告.docx
文档评论(0)