回 帖 发 新 帖 刷新版面

主题:谁有比较有趣的游戏?用QB编的,把程序发生来,谢谢了!

想用QB编个游戏,但想不到主题,想到也不会.......
有会的高手帮帮忙,把程序发上来,让我抄袭一下....................
.................谢谢.................

回复列表 (共8个回复)

沙发

找不到主题?
网上N多小游戏,随便找个模仿下不就可以了。
最常见的:俄罗斯方块,泡泡龙,打砖块,连连看,扑克游戏。贪食蛇。推箱子。。。很多都是在这些游戏上衍生出来的;还怕没主题。

而且就算有人发源程序给你,百分之90的情况下:在你的电脑上无法正常运行。
因为就算是上面这种小游戏。想写的好点的。多数是调用了库文件或者是连接了其他的basic程序。你总不可能要人家把这些也发上来把,就算是发上来了。毕竟是DOS下的程序,编程环境变了,路径变了一样的没戏。

板凳

一个小游戏--扫雷:(m,是几阶的;n,地雷数)
cls
input n,m
dim a(m,m)
for i=1 to m
for j=1 to m
a(i,j)=int(rnd*1)
if a(i,j)=1 then s=s+1
if s=n then exit for
next j
next i
for i=1 to m*m
q=0
input a,b
if a(a,b)=1 then print"game over!":end
if a(a,b)=0 then a(a,b)=1
for i1=1 to m
for i2=1 to m
if a(i1,i2)<>1 then q=1
if q=0 then print "win":end
next i
注:有可能有一些小错误,请指教!

3 楼


扫雷那个挺好的,但是所有的if语句都没有加end if
不知道不加end if是不是可以运行,请高人指教

4 楼

,楼上的当然要加end if,着也是一种习惯啊

5 楼

IF行结构不需要END IF,块结构要。

6 楼

CLS
INPUT "N,M="; N, M
DIM A(M, M)
FOR I = 1 TO M
FOR J = 1 TO M
A(I, J) = INT(RND * 2)
IF A(I, J) = 1 THEN S = S + 1
IF S = N THEN EXIT FOR
NEXT J
NEXT I
FOR I = 1 TO M * M
Q = 0
INPUT A, B
IF A(A, B) = 1 THEN PRINT "game over!": END
IF A(A, B) = 0 THEN A(A, B) = 1
FOR I1 = 1 TO M
FOR I2 = 1 TO M
IF A(I1, I2) <> 1 THEN Q = 1
IF Q = 0 THEN PRINT "win": END
NEXT I2, I1
NEXT I
这是我改进过的,还有,好象少了N多NEXT么。

7 楼

CLS
INPUT "N,M="; N, M
DIM A(M, M)
FOR I = 1 TO M
 FOR J = 1 TO M
  A(I, J) = INT(RND * 2)
  IF A(I, J) = 1 THEN S = S + 1
  IF S = N THEN EXIT FOR
 NEXT J
NEXT I
FOR I = 1 TO M * M
 Q = 0
 INPUT A, B
 IF A(A, B) = 1 THEN PRINT "game over!": END
 IF A(A, B) = 0 THEN A(A, B) = 1
  FOR I1 = 1 TO M
   FOR I2 = 1 TO M
    IF A(I1, I2) <> 1 THEN Q = 1
    IF Q = 0 THEN PRINT "win": END
 NEXT I2, I1
NEXT I
还没有缩进格式。

8 楼


CLS
DO
INPUT "Hang,Lei:", h, l
LOOP UNTIL h > 3 AND l < h * h AND h <= 10
CLS
PRINT "Qing Sao Chu Suo You Bu Shi Lei De Di Fang!!"
DIM a(h, h)
RANDOMIZE TIMER
DO
  i = INT(RND * h) + 1
  j = INT(RND * h) + 1
  IF a(i, j) <> 1 THEN a(i, j) = 1: s = s + 1
LOOP UNTIL s = l
s = 4: ss = 0
DO
1 INPUT "Hang,Lie:", i, j
  IF i = 1999 AND j = 59 THEN GOTO 2
  IF i > h OR j > h OR i < 1 OR j < 1 THEN GOTO 1
  IF a(i, j) = 0 THEN
    PRINT "Gong Xi!"
    ss = ss + 1
    a(i, j) = 1
  ELSE
    PRINT "Cai Dao Lei Le!"
    s = s - 1
  END IF
LOOP UNTIL s = 0
CLS
PRINT "Ni Si Le!!"
PRINT "Ni Cai Dao Le 4 Ge Lei,Bu Guo Ni Zhao Dao Le"; ss; "Kuai An Quan Qu Yu!"
SLEEP 10
END

2
CLS
PRINT "Lei Fen Bu Qu Yu:"
  FOR ii = 1 TO h
    FOR jj = 1 TO h
      IF a(ii, jj) = 1 THEN PRINT "("; ii; ","; jj; ")"
  NEXT jj, ii
  i$ = INPUT$(1)
  CLS
  GOTO 1

我来回复

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