24小时热门版块排行榜    

查看: 689  |  回复: 6
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

lijunjiexm

铁虫 (小有名气)

[求助] 求助简单的一个参数传递问题,谢谢

请教一个简单程序MID,
     PROGRAM MID

        implicit real*8(a-h,o-z)
      real*8 ia(5)
      
        open(10,file='inid.dat')
        open(21,file='mesh1.dat')
      read(21,*) numnp,numel

        do 300 i=1,numnp
            read(21,2100) idum,xreal,yreal,ia(i)
            write(10,*) ia(i)       
c         write(10,2100)  idum,xreal,yreal,ia(i)
300   continue
     
2100  format(i5,2x,e15.5,2x,e12.5,2x,i2)

      end
C---------------------------------------------------------------------------------------
mesh1.dat为
         5        2 numnp , numel
    1      0.00000E+00   0.00000E+00   1
    2      0.00000E+00   0.35803E-03   1   
    3      0.00000E+00   0.70174E-03   1  
    4      0.00000E+00   0.10317E-02   1  
    5      0.00000E+00   0.13485E-02   1  
但是 用 write(10,*)  ia(i)语句后,写进去的inid.dat文件为:
  4.940656458412465E-324
  4.940656458412465E-324
  4.940656458412465E-324
  4.940656458412465E-324
  4.940656458412465E-324
而选择write(10,2100)  idum,xreal,yreal,ia(i) ,则inid.dat为
   1      0.00000E+00   0.00000E+00   1
    2      0.00000E+00   0.35803E-03   1   
    3      0.00000E+00   0.70174E-03   1  
    4      0.00000E+00   0.10317E-02   1  
    5      0.00000E+00   0.13485E-02   1
但在在debug过程ia的数据居然是 4.940656458412465E-324,这个怎么解释呢?怎么使得ia数组等于 1 1 1 1 1?请多多指教,谢谢
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

【答案】应助回帖

引用回帖:
3楼: Originally posted by lijunjiexm at 2011-09-01 22:19:55:
为什么real不行呢?试了下把real*8改成dimension好像也可以,这个能稍微解释下吗,谢谢

real*8 ia(5) 相当于
real* ia
dimension ia(8)

不行的原因是因为 format 中明确地写了第五项是 i2 格式,即是一个 integer,但 read 语句发现第 5 项是一个 real*8 的变量……
5楼2011-09-01 22:26:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 7 个回答

snoopyzhao

至尊木虫 (职业作家)

【答案】应助回帖

★ ★
xzhdty(金币+2): 欢迎常来程序语言看看 2011-09-02 09:20:12
把 real*8 ia(5) 改成 integer ia(5) 就可以了(gfortran 验证通过)。如果不修改,在 gfortran 下会报如下错误:

Fortran runtime error: Expected INTEGER for item 5 in formatted transfer, got RE
AL
(i5,2x,e15.5,2x,e12.5,2x,i2)
                         ^
2楼2011-09-01 22:07:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lijunjiexm

铁虫 (小有名气)

引用回帖:
2楼: Originally posted by snoopyzhao at 2011-09-01 22:07:11:
把 real*8 ia(5) 改成 integer ia(5) 就可以了(gfortran 验证通过)。如果不修改,在 gfortran 下会报如下错误:

Fortran runtime error: Expected INTEGER for item 5 in formatted transfer, got RE
AL
( ...

为什么real不行呢?试了下把real*8改成dimension好像也可以,这个能稍微解释下吗,谢谢
3楼2011-09-01 22:19:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lijunjiexm

铁虫 (小有名气)

对了,忘了说一下,您的inid.dat文件生成是这个(我想要的)吗 (在这个语句下 write(10,*)  ia(i)语句)

1
  1   
  1  
  1  
  1
4楼2011-09-01 22:24:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 0856求调剂285 +7 吕仔龙 2026-02-28 7/350 2026-03-01 16:04 by hmn_wj
[考研] 0856化工专硕求调剂 +7 董boxing 2026-03-01 7/350 2026-03-01 16:02 by hmn_wj
[考研] 307求调剂 +5 wyyyqx 2026-03-01 5/250 2026-03-01 15:21 by Fff-1
[考研] 281求调剂 +4 2026计算机_诚心 2026-03-01 4/200 2026-03-01 15:21 by chemisry
[考研] 304求调剂 +6 曼殊2266 2026-02-28 7/350 2026-03-01 15:14 by wjLi2017
[考研] 材料工程274求调剂 +3 Lilithan 2026-03-01 3/150 2026-03-01 14:58 by ms629
[考研] 求调剂 +6 repeatt?t 2026-02-28 6/300 2026-03-01 14:37 by Sakura绘
[考研] 298求调剂 +9 人间唯你是清欢 2026-02-28 12/600 2026-03-01 14:23 by Ducount.Y
[考研] 材料学调剂 +8 提神豆沙包 2026-02-28 10/500 2026-03-01 14:14 by peike
[考研] 0856材料求调剂 +3 麻辣鱿鱼 2026-02-28 3/150 2026-03-01 14:06 by yc258
[考研] 290求调剂 +8 材料专硕调剂; 2026-02-28 9/450 2026-03-01 12:46 by 闭眼看蓝天
[考研] 0856材料专业298分有科研经历 硕士研究生调剂自荐信 +6 zyf上岸 2026-03-01 6/300 2026-03-01 12:43 by liqiongjy
[考研] 306分材料调剂 +3 chuanzhu川烛 2026-03-01 4/200 2026-03-01 12:32 by houyaoxu
[考研] 272求调剂 +5 材紫有化 2026-02-28 5/250 2026-03-01 11:51 by gaoxiaoniuma
[考研] 321求调剂一志愿东北林业大学材料与化工英二数二 +3 虫虫虫虫虫7 2026-03-01 6/300 2026-03-01 11:50 by gaoxiaoniuma
[考研] 材料类求调剂 +8 wana_kiko 2026-02-28 8/400 2026-03-01 11:44 by 王伟要上岸啊
[考研] 311求调剂 +9 南迦720 2026-02-28 10/500 2026-03-01 10:55 by sunny81
[基金申请] 面上模板改不了页边距吧? +5 ieewxg 2026-02-25 6/300 2026-03-01 00:10 by addressing
[考研] 085600材料工程一志愿中科大总分312求调剂 +8 吃宵夜1 2026-02-28 10/500 2026-02-28 20:27 by L135790
[考研] 265分求调剂不调专业和学校有行学上就 +4 礼堂丁真258 2026-02-28 6/300 2026-02-28 16:18 by 求调剂zz
信息提示
请填处理意见