回 帖 发 新 帖 刷新版面

主题:菜鸟编写的打印9*9算数表,大哥大姐帮忙看看啊谢谢····

parameter(nm=9)
      integer pst(nm,nm)
      do 10,i=1,nm
      pst(i,1)=i
      pst(1,i)=i
10    continue
      do 20,i=1,nm
      do 30,j=1,nm
      pst(i,j)=pst(1,j)*pst(i,1)
30    continue
20    continue
      write(*,100)
      do 40,i=1,9
      write(*,200)(pst(i,j),j=1,i)
40    continue
100   format(/2x,'~@/@~ A MULTIPLICATION TABLE ~@/@~')
      write(*,*)'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'
200   format(/2x,20i4)
      write(*,*)'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'
      end
   运行没结果为什么只有左下角而没有右上角??              

 ~@/@~ A MULTIPLICATION TABLE ~@/@~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    1

    2   4

    3   6   9

    4   8  12  16

    5  10  15  20  25

    6  12  18  24  30  36

    7  14  21  28  35  42  49

    8  16  24  32  40  48  56  64

    9  18  27  36  45  54  63  72  81
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

回复列表 (共4个回复)

沙发

闲来无事,练练手。

program main
  implicit none
  integer, parameter:: nm = 9
  integer:: i, j   ! for loop
  character(len = 20):: fmt_str
  
  fmt_str = "(I4)"
  write(*, *) "A MULTIPLICATION TABLE: "
  Do i = 1, nm, 1
    do j = 1, i, 1  
      write(unit = *, fmt = fmt_str, advance = "no") i * j
    end do   ! j
    write(unit = *, fmt = *) 
  End Do   ! i
  
  stop      
end program main

板凳

你自个儿的程序,似乎也没什么问题。

program main
  implicit none
  integer, parameter:: nm = 9
  integer:: pst(nm, nm)
  integer:: i, j   ! for loop
  
  do i = 1, nm, 1
    pst(i, 1)=i
    pst(1, i)=i
  end do
  do i = 1, nm, 1
    do j=1, nm, 1
      pst(i,j)=pst(1,j)*pst(i,1)
    end do
  end do   ! i
  write(*, *) "A MULTIPLICATION TABLE: "
  do i = 1, 9, 1
  write(*, 200) (pst(i,j),j=1,i)
  end do   ! i
200   format(/2x,20i4)

  stop      
end program main

3 楼


你把QQ告我吧,有问题了我可以像你更快的学习,谢谢·····

4 楼

[em18][em2]

我来回复

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