Fortran Coder

查看: 9255|回复: 2
打印 上一主题 下一主题

[求助] 想一个一个读出一行的每个单词,但是这个程序不运行··

[复制链接]

23

帖子

10

主题

0

精华

熟手

F 币
145 元
贡献
90 点
跳转到指定楼层
楼主
发表于 2014-12-11 14:20:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
[Fortran] 纯文本查看 复制代码
program main
  character,allocatable:: word(:)
  character spliter,substring
  integer id,len_spliter,len_substring
  integer,parameter ::ncol=4
  allocate(word(ncol))
  open(unit=12,file='a.txt')
  read(12,*) substring
  write(*,*)'分隔符:'
  read(*,*)spliter
  len_spliter=len(spliter)
  do i=1,ncol
    len_substring=len(substring)
    id=index(trim(substring),spliter)
    substring=substring(1:(id-1))
    word(i)=substring
    write(*,*) word(i)
    substring=substring((id+len_spliter):len_substring)
 end do
 stop
end 


分享到:  微信微信
收藏收藏 点赞点赞 点踩点踩

801

帖子

2

主题

0

精华

大宗师

F 币
3804 元
贡献
2273 点
沙发
发表于 2014-12-11 15:49:50 | 只看该作者
[Fortran] 纯文本查看 复制代码
program main
  character(80),allocatable:: word(:)
  character(80) substring, spliter
  integer i, id,len_spliter,len_substring
  integer,parameter ::ncol=4
  allocate(word(ncol))
  open(unit=12,file='a.txt')
  read(12,'(A)') substring
  write(*,*)'分隔符:'
  read(*,*)spliter
  len_spliter=len(trim(spliter))
  substring = adjustl(substring)
  len_substring=len(trim(substring))
  do i=1,ncol-1
    id=index(substring,trim(spliter))
    word(i)=substring(1:(id-1))
    write(*,*) trim(word(i))
    substring=substring((id+len_spliter):)
  end do
  word(ncol)=substring
  write(*,*) trim(word(ncol))
pause
end 

评分

参与人数 1F 币 +9 贡献 +9 收起 理由
fcode + 9 + 9

查看全部评分

23

帖子

10

主题

0

精华

熟手

F 币
145 元
贡献
90 点
板凳
 楼主| 发表于 2014-12-12 14:39:23 | 只看该作者
li913 发表于 2014-12-11 15:49
[mw_shl_code=fortran,true]program main
  character(80),allocatable:: word(:)
  character(80) substri ...

太好了!!你太厉害!!谢谢!!感激不尽
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-5-20 23:39

Powered by Tencent X3.4

© 2013-2024 Tencent

快速回复 返回顶部 返回列表