回 帖 发 新 帖 刷新版面

主题:小问题,高分悬赏!!求高手解答

111    112     113     114     115
100    101     102     103     104
 89     90      91      92      93 
 79     79      80      81      82
 67     68      69      70      71
 56     57      58      59      60
 45     46      47      48      49
 34     35      36      37      38
 23     24      25      26      27
 12     13      14      15      16
  1      2       3       4       5
  1     12      23      34      45
  2     13      24      35      46
  3     14      25      36      47
  4     15      26      37      48
  5     16      27      38      49
  6     17      28      39      50
  7     18      29      40      51
  8     19      30      41      52
  9     20      31      42      53
 10     21      32      43      54
 11     22      33      44      55
 11     10       9       8       7
 22     21      20      19      18
 33     32      31      30      29
 44     43      42      41      40
 55     54      53      52      51
 66     65      64      63      62
 77     76      75      74      73
 88     87      86      85      84
 99     98      97      96      95
110    109     108     107     106
121    120     119     118     117
我在程序中开了这个文件BOUND.DAT
在读入的时候 BOUND(33,5)
   DO 30 IBOUN=1,33
   READ(10,900) (BOUND(IBOUN,J),J=1,5)
 30 CONTINUE
900 FORMAT(5I3)
运行的时候显示pc-correlation disabled
而且在调试的时候发现,BOUND数组中只有BOUND(1,1)到BOUND(33,1)
这一列是正常读入的 别的都不对

求高手指点

怎么才能让它正常读入
合理的输入格式应该是怎么样的?


回复列表 (共3个回复)

沙发

试试这样

900 FORMAT(5(I3,1x))

或者
READ(10,*) (BOUND(IBOUN,J),J=1,5)

板凳

不用格式的方式读入;
或者:
计算一下每一列数据最后一个数字,与上一列数据最后一列数字的列数差,并将列数差做为INTEGER的宽度,比如第一列数据最后一个数字假设是在第10列,第二列是在20……这样的话,格式串应该为:
FORMAT(5I10)

3 楼

DO 30 IBOUN=1,33
   READ(10,*) (BOUND(IBOUN,J),J=1,5)
30 CONTINUE

我来回复

您尚未登录,请登录后再回复。点此登录或注册