资源描述:
《FORTRAN90第8章》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、FORTRAN程序设计计算机中心2006.38.1字符型数据基础8.5字符型数据作为过程变元及函数值8.2字符型数据的输入输出8.6程序举例8.3字符型数组8.4用于字符处理的内在函数VisualFortran90程序设计8.1.1字符型常量与变量说明(1)字符区分字母大小写(2)空格为有效字符(3)字符不受fortran90字符集的限制(4)单撇号为有效字符时,改写为两个单撇号或双撇号(5)种别参数用前缀法表示(6)长度>=0长度为0:由两个连续的撇号表示‘’或“”字符常量的写法:‘一串字符’或“一串字符”8.1字符型数据基础长度为字符的个数:起止界不算两个单撇
2、号或双撇号算一个空格为有效字符算一个长度计算字符型变量(1)字符变量的含义:对应内存一片连续的存储空间(2)字符变量应先说明其类型、长度、名字,再使用比其它变量多长度说明Character([len=]n1[,[kind=]n2])[,属性列表]::变量名[=初值]例:CHARACTER(LEN=20,kind=2)::last_nameCharacter(kind=3,len=8)::Var,AuCharacter(8,3)::Var,Au个别优于统一长度在前,种别在后只有长度说明而无种别参数说明时,采用以下说明:Character(len=7)::A或Char
3、acter(7)::A或character*7::A变量后指明其具体长度(个别说明):CHARACTER(8)::strg,strh,stri*12不说明长度,长度默认为1character::a,b,c说明语句的写法长度可为整型表达式,但要加括号例:character(2)::a,b(2+3)有时可把长度值写成一个星号,但要加括号Character(*)::CH,PARACharacter(2)::CH,PARA*(*)使用范围:(1)具有PARAMETER属性的字符常量Character(*),parameter::para=‘FORTRAN_90’字符串长度
4、取对应的字符常量的长度。(2)用字符变量作为虚元时,虚元的长度取对应实元的长度虚元可以和任意长度的实元相结合,有利于提高子程序的通用性。子串变量:一个字符变量值中连续的一部分称为字符子串。例:已知A=‘123456’则‘123’,‘456’是A的子串子串变量的写法字符变量名(e1:e2)e1和e2为整型表达式,表示起始和终止位置。1<=e1<=e2<=长度L例:子串变量写法A(1:3)‘123’A(4:5)‘45’A(3:3)‘3’A(:4)‘1234’A(4:)‘456’A(:)‘123456’8.1.2字符子串字符表达式用字符运算符把字符常数、字符变量、字符数
5、组元素等字符型数据连接起来的有意义的式子。字符运算符1、字符连接符“//”功能:将两个字符型数据按顺序首尾连接起来,成为一个新的字符型数据。例:‘abc’//’def’得‘abcdef’注意:不满足交换律8.1.3字符表达式与字符赋值语句2、关系运算:例:‘abc’<‘ada’比较规则:1.两个字符比较时,以它们的ASCII码值决定大小。2.字符串比较:从左到右逐个字符进行比较若所有字符完全相同,则表达式相等,否则,以第一次出现不等字符的比较结果为准。3.若两个字符串中字符个数不等时,则将较短的字符串后补足空格后再比较。ASCII顺序:空格0~9,A~Z,a~z3
6、248~5765~9097~122(1)写法:字符变量或子串变量V=字符型表达式e功能:计算e;转化为V的长度;赋值例:character::LONG*8,SHORT*3LONG=‘ABCD’;SHORT=‘ABCDEF’LONG:SHORT:ABCABCD长:截取左边短:右补空格LONG(1:2)=‘SS’子串赋值不影响其它子串的值注:同一变量名出现在赋值号两侧,有警告错误,但仍可执行。错例:NAME=NAME//‘SUN’字符型赋值语句表控格式输入例如:CHARACTER(5)::A,B,CRead*,A,B,C输入:‘CHINA’,‘NEW’,‘SHANGH
7、AI’结果:A值CHINA;B值NEW;C值SHANG注意(1):长度转换同赋值长:截取左边短:右补空格(2):表控格式输入字符型数据时必须输入用单撇号或双撇号做定界符的字符串。各常量之间应用逗号分隔。8.2字符型数据的输入与输出(1)用字符型编辑符:Aww是规定的输入宽度.(2)用字符型编辑符:A宽度w的值同长度的值注意:(1)长度转化规则是:若长度L=w,输入的字符个数恰好够用。若Lw,输入的字符不能满足,在右边补足L-w各空格(2)格式输入:字符串两边不应加定界符,不用空格分隔数据,否则会当作有效字符处理。与赋值语句,表
8、控格式相反