繼續學習Fortran。今天的作業是英文字母大小寫轉換,即大寫字母轉換為小寫字母,小寫字母轉換為大寫字母。
這道題主要是考查字符與ASCII碼之間的轉換。依據規則,小寫字母的ASCII碼減32就是大寫字母的ASCII碼,同樣,大寫字母的ASCII碼加32就是小完蛋字母的ASCII碼。然後再轉換為字符。
字符轉ASCII函數:ichar();ASCII轉字符函數:char();字符長度函數:len_trim()。
代碼輸入:
program test15
implicit none
integer::i
character(len=20)::str_s
write(*,*)"輸入字符串:"
read(*,*)str_s
do i=1,len_trim(str_s),1
if(str_s(i:i).GE."a".AND.str_s(i:i).LE."z") then
str_s(i:i)=char(ichar(str_s(i:i))-32)
else
if(str_s(i:i).GE."A".and.str_s(i:i).LE."Z") then
str_s(i:i)=char(ichar(str_s(i:i)) 32)
end if
end if
end do
write(*,*)"轉換後:",str_s
pause
stop
end program test15
朋友們看到代碼中有"GE","LE","AND"等,其實這是Fortran的特色運算符:
關系運算符
新版的Fortran中,也可以直接用>,<,>=等數學符号。
邏輯運算符
掌握了Fortran基礎語法,後面的作業就有些難度了,下期見,讓我們一起學Fortran。
Fortran我也是初學,好久不寫代碼了,歡迎朋友們指正。
,
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!