- 1、本文档共20页,可阅读全部内容。
- 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第七章字符数据处理.ppt
§7 字符数据处理 §7.1 字符型数据 §7.1.1 字符型常量 §7.1.2 字符型变量 §7.1.3 字符型变量的赋值 §7.1.4 字符型变量的输入与输出 §7.1.5 字符型变量作虚参 §7.2 字符型数据运算 §8.2 字符型数据运算 §7.2.2 字符型数据的比较 §7.3 字符子串 §7.4 字符型数据的应用举例 * §7.1 字符型数据 §7.2 字符型数据的运算 §7.3 字符子串 §7.4 字符型数据的应用举例 一个字符在内存中占一个字节。 §7.1.1 字符型常量 字符型常量是用定界符括起来的一串字符。定界符可用单引号或双引号,但前后必须一致。 字符型符号常量:可用parameter属性给字符串命名,此名称就是字符型符号常量,因为是常量,当然不能在程序中给它赋值。 给字符型符号常量时,其长度可用*表示。 Character(20),Parameter:: Addr=“Hefei Character(*),Parameter:: Book=RedStar §7.1.2 字符型变量 字符型变量用于存放字符型常量。必须先定义 定义格式 Character([Len=]字符串长度)::变量名[,变量名] Len=可以不写,当长度为1时可以连()也没有。 如果变量表中有长度不同于Len=域指定的变量,可以对它进行个别说明,以个别说明为准。 Character(20)::ch1,ch2,ch3*15,ch4*1,ch5*12 Character c1,c2,c3 character(20) s1,s2,s3*3 还可以定义字符型数组 character(20) c1(3),c2(5,6),c3(4,5)*8 character(20)::s1(3),t2(5,6),u(4,5)*8 格式:字符变量=字符表达式 当字符表达式的长度超过字符变量的长度时字符表达式右边多余字符会丢掉,相反,当字符表达式的长度短于字符变量的长度时则在右边补空格。以字符变量的长度为准。 character(20) s1,s2 s1=“ABCDEFGHHIJKL. s2=“1224WEFWE 还可以将整型表达式赋给字符变量 Character(20) a a=65*256+66;print *,a;End !输出为BA 用表控格式输入字符型数据时要带定界符,格式化输入时不要带定界符。 用表控格式输出字符型数据时,各字符串依次输出,中间不留空格;如果想要分隔,则应在输出列表中插入选定使用的分隔符。 格式化输出是由格式编辑符控制的。 字符型变量作过程的虚参时,可定义其为固定长度变量或假定长度变量。一般建议用假定长度变量较好。用固定长度变量时,其实际长度与实参的长度可以相同也可以不同,这可能会导致比较隐蔽的错误,应该引起注意。 Character (20) a,b,c call sub(a,b,c) end Subroutine sub(a,b,c) Character(10) a,b*(*),c*20 End subroutine sub §7.2.1 字符表达式 字符型数据的运算符只有字符连接符//一种,也称加法运算,与字符型数据组成字符表达式,将两个字符型数据连接起来。 Character *20 c,a*4,b*5 a= This b= is□a c=a//b// test c=a(1:3)//b(:2)//c(5:8)//OK Print *,c END 结果为:thiisis□aok□□□□□□□□□ §7.2.1 字符表达式 两个形状相同的字符型数组的加法运算是将两个数组的对应元素相加(字符串的连接),得到一个新的数组。例如: Character(3),dimension(2)::text_1=(/’abc’,’123’/) Character(3),dimension(2)::text_2=(/’xyz’,’456’/) Print*, text_1// text_2 End 结果为: abcxyz123456 两个字符串可以比较,也可用六种关系运算符: str.GT.char1 str2==a1 st/=name 字符串的比较实际上是比较字符的机内码 字符关系运算法则: 单个字符比较,代码大者为“大”: ‘b’ ‘a’ 比较字符串时,如果两个字符串长度不等, 则首先用空格把短串尾部补齐,使两字符串 等长;从第1个字符开始依次比较每个字符, 字符大者其所在字符串为大;所有字符都相 等的两个字符串相等。 统计字符串长度:LEN(S) §7.2.3 处理字符串的系统函数 给出字符串S2在S1中的位置: INDEX
文档评论(0)