回 帖 发 新 帖 刷新版面

主题:我的九九乘法表程序出了什么问题?

fh=CHR(13)+CHR(10) 
kj="                      九九乘法表"+fh+fh 
FOR i = 1 TO 9 
    FOR j=1 TO i 
        kj=kj+ALLTRIM(str(j))+"×"+ALLTRIM(str(i))+"="+ALLTRIM(STR(j*i))+"  " 
    next 
    kj=kj+fh 
NEXT 
?kj 

运行后在屏幕上显示如下: 
1×1=1 
1×2=2  2×2=4  
1×3=3  2×3=6  3×3=9  
1×4=4  2×4=8  3×4=12  4×4=16  
1×5=5  2×5=10  3×5=15  4×5=20  5×5=25  
1×6=6  2×6=12  3×6=18  4×6=24  5×6=30  
6×6=36  
1×7=7  2×7=14  3×7=21  4×7=28  5×7=35  
6×7=42  7×7=49  
1×8=8  2×8=16  3×8=24  4×8=32  5×8=40 
6×8=48 7×8=56  8×8=64 
1×9=9  2×9=18  3×9=27  4×9=36  5×9=45 
6×9=54 7×9=63  8×9=72  9×9=81 

我要的效果是: 
1×1=1 
1×2=2  2×2=4  
1×3=3  2×3=6  3×3=9  
1×4=4  2×4=8  3×4=12  4×4=16  
1×5=5  2×5=10  3×5=15  4×5=20  5×5=25  
1×6=6  2×6=12  3×6=18  4×6=24  5×6=30  6×6=36  
1×7=7  2×7=14  3×7=21  4×7=28  5×7=35  6×7=42  7×7=49  
1×8=8  2×8=16  3×8=24  4×8=32  5×8=40  6×8=48  7×8=56  8×8=64 
1×9=9  2×9=18  3×9=27  4×9=36  5×9=45  6×9=54  7×9=63  8×9=72  9×9=81 

哪们大哥帮我指点一下好吗?先谢谢了!!!!!!!!! 

回复列表 (共8个回复)

沙发


clear
kj="                      九九乘法表"+fh+fh 
FOR i = 1 TO 9 
    FOR j=1 TO i 
        ??ALLTRIM(str(j))+"×"+ALLTRIM(str(i))+"="+ALLTRIM(STR(j*i))+"  " 
    next 
    ?
NEXT 

板凳

深表感谢!我会上机调试看看.

3 楼

你结果是对的,但在VFP运行显示的结果是那样,你把结果输入到一个TXT文件中就可以看到结果是对的.
=STRTOFILE(kj,"d:\九九乘法表.TXT")

4 楼

领教了,谢谢!!!!!!!!!!!

5 楼

我这个简单
clear
FOR i=1to 9
    FOR j=1to i 
    ??STR(i,1),"*",STR(j,1),"=",STR(i*j,2),""
    ENDFOR  
   ?
NEXT

6 楼

&&&&&&&&&&&&&生成九九乘法表并写入文本文件&&&&&&&&&&&&&&&&&&&&&&&&
gnsysfile=FCREATE("九九乘法表.txt",0)
IF gnsysfile<0
       MESSAGEBOX("读取文件错误",0,"信息")
ELSE 
=FSEEK(gnsysfile,0)
kj="******************************九九乘法表*************************************"
=FPUTS(gnsysfile,kj)
FOR i = 1 TO 9 
    FOR j=1 TO i 
        kj=kj+ALLTRIM(str(j))+"×"+ALLTRIM(str(i))+"="+ALLTRIM(STR(j*i))+"  " 
    next 
    =FPUTS(gnsysfile,kj)
    kj=''
NEXT 
=FCLOSE(gnsysfile)
ENDIF

7 楼

颇有意思的一个实例。

**********
Clear
Fh=CHR(13)+CHR(10) 
Kj="                      九九乘法表"+Fh+Fh
FOR I = 1 TO 5   &&6以后出问题
    FOR J=1 TO I
        If I*J<10
            Kj=Kj+ALLTRIM(str(j))+"×"+ALLTRIM(str(i))+"="+ALLTRIM(STR(j*i))+"   " 
        Else
            Kj=Kj+ALLTRIM(str(j))+"×"+ALLTRIM(str(i))+"="+ALLTRIM(STR(j*i))+"  "             
        Endif
    Next 
    Kj=Kj+Fh
Next
? Kj

**********
Clear
Fh=CHR(10)&&+CHR(13)+CHR(10) 
Kj="                      九九乘法表"+Fh+Fh
FOR I = 1 TO 6   &&7以后出问题
    FOR J=1 TO I
        If I*J<10
            Kj=Kj+ALLTRIM(str(j))+"×"+ALLTRIM(str(i))+"="+ALLTRIM(STR(j*i))+"   " 
        Else
            Kj=Kj+ALLTRIM(str(j))+"×"+ALLTRIM(str(i))+"="+ALLTRIM(STR(j*i))+"  "             
        Endif
    Next
    Kj=Kj+Fh
Next
? Kj

估计以下这段代码比较合乎楼主的胃口。
Clear
? "                                     九 九 乘 法 表"+CHR(10)+CHR(10)
FOR I = 1 TO 9 
    FOR J=1 TO I 
        If I*J<10
            ?? ALLTRIM(str(j))+"×"+ALLTRIM(str(i))+"="+ALLTRIM(STR(j*i))+"   " 
        Else
            ?? ALLTRIM(str(j))+"×"+ALLTRIM(str(i))+"="+ALLTRIM(STR(j*i))+"  "             
        Endif
    Next 
    ?
NEXT

8 楼

执死鸡
&&&&&&&&&&&&&生成九九乘法表并写入文本文件&&&&&&&&&&&&&&&&&&&&&&&&
gnsysfile=FCREATE("九九乘法表.txt",0)
IF gnsysfile<0
       MESSAGEBOX("读取文件错误",0,"信息")
ELSE 
=FSEEK(gnsysfile,0)
kj="******************************九九乘法表*************************************"+CHR(13)+CHR(10) 
=FPUTS(gnsysfile,kj)
FOR i = 1 TO 9 
    FOR j=1 TO i
      if j=2 and (i=3 or i=4)
        kj=kj+ALLTRIM(str(j))+"×"+ALLTRIM(str(i))+"="+ALLTRIM(STR(j*i))+"   " 
       else
        kj=kj+ALLTRIM(str(j))+"×"+ALLTRIM(str(i))+"="+ALLTRIM(STR(j*i))+"  " 
       endif
    next 
    =FPUTS(gnsysfile,kj)
    kj=''
NEXT 
=FCLOSE(gnsysfile)
ENDIF

我来回复

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