写在教程前面的话
首先,读这个帖子的人是真正想学编程的,不一定是要学QBASIC,如果你只是为了书上的题目而来,请别问我,也别给我发邮件,也别在qq上加我!
很多初学编程的网友喜欢问这样的问题:
1 怎么才能学好编程?
2 编程需要E文和数学知识很优秀吗?
3 学了很长时间只会做题目,怎么在实际中用?   
4 现在QBASIC能不能适应现在的编程要求吗?它对以后学习高级语言有没有什么大的用处吗?现在学习它是不是浪费时间呢?
我简单的讲讲自己的事情,让大家来参考!
我在学校学习成绩极其的烂,7门功课总分200多一点,连普通高中也没有考上,我当时的E文是蒙了20多分,数学好点,不过也没有及格,我比较喜欢的是物理!当时最喜欢看科幻小说,个人爱好非常广泛,
喜欢弹吉他、拉二胡、吹笛子、练书法、还喜欢电子制作,而且都能拿得出手,最起码还有人跟我学,不过这些个人爱好在我的父亲眼里都是不务正业,他常说的就是“万般皆下品,唯有读书高”
现在回过头来我看应该是“万般皆下品,唯有文凭高”!现在社会状况是:如果你没有文凭就是有能力也没有用。
如果要学习动画制作,构建什么数学模型,工程上的应用这样的东西,那就非得数学厉害不可!
(有的人以为我知道QB的大部分语句,呵呵,其实我有时连些简单的语句的格式都不记得,这个可不是跟大家开玩笑,我写程序时碰到不知道用法的语句我就翻书或者是看QB自带的帮助,如果我要做个实用的程序,边做边就熟悉了一些语句的用法,,可做完就又忘记!), 除了QB别的编程语言我是不会的,就连VB我也不会,我在为自己申请专利的时候,要写个控制程序,就临时的看了VB的书,边看边写了3天把程序做好了,完了也就忘记VB了!我实际上会的是方法,怎样用编程解决问题的方法.
我还看到很多人在学BASIC的时候,讨论到底是学QB还是VB,学C的人讨论是学C还是学C++,或者是讨论C,QB,VB,VC,BC。。。。。等等这些语言如何如何,各执一词,弄得脸红脖子粗.....实际这些东西都有共通之处,我告诉你,别犹豫,别管什么,随便先弄个语言学习再说!不管什么语言都有判断循环这些基本东西!
至于现在QBASIC能不能适应现在编程开发的要求,这个问题很简单,Qbasic本身就不是用来做程序开发的,(注意,qbasic不是qb!)所以Qbasic不是开发工具!
也有人说学过QBASIC后感觉对后边学习的编程语言没什么用处,我想也对,学电脑这些东西关键是兴趣,如果你对qbasic没有兴趣,就别千万别学它,你对什么有兴趣就学什么,兴趣是
学习的最好老师,请千万千万记住这一点!一定记住你对什么有兴趣就学什么,而且要坚持保持你始终有浓厚的兴趣,不能3分钟热情!
对于现在的QBASIC是不是一种好的基础的编程语言,对以后学习高级语言有没有什么大的用处,学习它是不是浪费时间的问题我是这样看,
:对于一个初学者来说,QB能很好的让你掌握一些编程的基本规则,比如循环,判断,什么的,对你学习别的语言有极大的帮助,如果一上来就学C,难度很大,选择这个语言也还得看你以后的职业选择,你也不一定出来就做程序员!再一个就是如果你对计算机的原理不能达到理解的深度,就无法真正的理解编程,如果你想详细的理解计算机的运作原理,不通过编程语言是无法来理解的!当然如果你做的不是和计算机底层,或者不是用软件直接控制硬件这样的操作,那就不很需要理解系统是如何运作的,比如象现在的win下的编程,你很轻易的做出一个程序,你并不需要知道,它是怎么来实现你的想法的,比如它是怎么把它显示到显示器,怎么判断鼠标的动作,怎么发出声音等等这些东西,如果
只是作为一个win下编程开发人员,并不需要来了解,但是你如果偏偏对这些有个求知欲望,我想,你就不得不从上一层一层的往低层学,或者直接学!QB又是所有语言中最容易掌握的!学好了QB,别的语言就势如破竹了!朱茵写真
在电脑编程方面,没有什么绝对,没有什么做不到,受到限制只有你的思想!我看到过许多精彩绝伦的qb程序,我想如果你对计算机系统的理解也达到了那样的一个深度,编程对与你来说应该只是工具,算法也是,一个问题,你用A语言也是这样的思路,你用B语言也是这样的算法,这个就和武侠高手一样,什么兵器都可以用,威力都一样,只是个顺不顺手的问题
都美竹是真名字吗所以,我说了句自己的名言:掌握了一门编程语言,就是打开了一扇通往计算机内部的大门!
那么,怎样学习好编程呢 ??
第一  需要看你的兴趣,必须有浓厚的兴趣,浓厚到你吃饭,睡觉,走路做什么事情都会去想它,实际上学别的东西也应该如此,比如你学习一个乐器、书法等等什么的,学到废寝忘食、物我两忘的程度,在那些只喜欢吃喝玩乐的人来看他们也会认为你是个神经病........你只要做到这个了,其他什么因素都不大重要了!(当然,学习编程不一定要从QBASIC开始)。你别手里拿着编程的书,脑子里却想着:等会去网吧打游戏,去聊天,或者别的什么.做什么事情都要专一!
第二 就是要掌握学习方法,很多人学了语句不知道怎么把它弄在一起,想做个东西却无处入手,也有人一看书就挺明白的,可一到坐到电脑前手就不听使唤
了,思想也短路了,一写程序就错,这个就是缺少上机锻炼恶果,一句简单的PRINT“OK”这个语句,你都必须要上机去实践一下,不要只停留在书本上,所以,我在教程里会从实际出发来教大家真正的应用,也希望大家能动手运行这些程序,可以直接复制到记事本,QB也支持纯文本格式!
第三 学会编程语言本身没有学会编程思想重要!切记切记!
第四 对于以后想做程序员的网友,学会应用基本的循环、判断......等等这些后马上转入别的语言,不要沾在QBASIC上!(真诚忠告)
第五 在写程序的时候一定要养成良好的习惯(别学我的坏习惯),我将另发帖介绍语言以外的东西
第六 不要怕程序运行出错,有了错误才能学到东西,学会调试程序非常重要,对所有语言都一样!
作者:qb45      发表时间:2005-3-1 14:47:00 
 第1楼 
教程一
QBASIC和QB的关系——
QB是QUICK BASIC的简称,是DOS时代的编程开发工具,QB是编译型的语言(QB版本到7.1专业板后就没有在出了)再就是VB了,DOS下也有个VBDOS,也是很方便的.
而QBASIC是DOS自带的一个解释型BASIC,因为DOS6.0版本的EDIT运行需要QBASIC,在以前的DOS6。22中带的有,还有以前的WIN95,WIN98的安装光盘中也有,那种D板的光盘中可没有,一般的就只有系统本身的安装文件,一般的QB语句都是能够在QBASIC上面运行的,但是有些低级的调用是不能在上面用的,这里所说的低级不是很差的意思,而是接近系统或者是硬件的调用,它能实现很强大的功能!
QBASIC和QUICK BASIC的界面和用法大致上都是一样的.
据说以后的计算机等级考试已经不用QBASIC了(有人就戏称QBASIC淘汰了),听到这个消息,我非常非常开心,因为以后再也不会有为了考试而学QBASIC的人来我问书上的题目了,我希望真正学习的人来这里交流!
在看这篇文章的人,我假定你已经有了一个QB编程软件,而且写过一两句BASIC语句,并且运行过!
如果你还没有请去下载!
编写程序的步骤:
1、有个需要解决的问题
2、分析这个问题
3、制定计划
4、写程序
5、调试程序
6、发布测试
下面我们从头开始学习:
第一步当然是 启动qb拉
启动后的菜单中文意思见下图
然后 输入下面这个语句
周笔畅个人资料
PRINT OK
然后我们来运行这个语句来看看什么结果
按F5键可以执行(按SHIFT+F5键也行),你也可以用鼠标把run菜单打开选择start来运行,运行会得到下面的结果
0
这是什么意思呢?
在PRINT OK这一句中 OK 是个变量,没有给这个变 量赋值,所以结果就是0
如果写成如下:
OK=5
PRINT OK
按F5键执行后,会得到下面的结果:
5
OK被赋值成5
如果写成如下:
INPUT OK
PRINT OK
按F5键执行后,会得到下面的结果:
屏幕上出现“?”提示符,是要求从键盘上把数输入给OK。
这时你键入23,回车后会得到下面的结果:
23
INPUT 语句格式:INPUT [“提示内容”;] 变量, 变量, 变量…
语句功能:当程序执行到这一语句时暂停,要求从键盘上输入一个数给这个变 量赋值,输入数后按回车键,程序继续运行。
如果你把OK用引号引起来
如: PRINT "OK"
运行后在屏幕上就会出现OK,凡是引号里的内容都会源源本本的输出!
如果我们想把结果输出到文件中而不是屏幕上,怎么办呢??
1、先打开文件  2、往文件中写相应的内容  3、 关闭文件
如下:
INPUT "请输入一个数 ";OK
PRINT "你输入的数是 ";OK
OPEN "TEMP.TXT" FOR OUTPUT AS #1
PRINT #1,"你输入的是",OK
CLOSE #1
你可以在WIN下用记事本打开TEMP。TXT 这个文件,就会看到你刚刚输入的数!
2、输出数据(写文件)
新文件写入记录
(1)PRINT#语句
格式:PRINT #<;文件号>,<;输出项>
例;PRINT #1,a;b;c
注意:逗号与分号的差别,与PRINT语句类似在对字符串存盘时,注意引入定界符3)CLOSE语句的功能是关闭已用的文件
CLOSE [#<;文件号1>][,#<;文件号2>]……
关闭由文件号指定的文件缓冲区,把在内存中的内容报存到瓷盘,如不指定文件号,则关闭所有已打开的文件。
例如:我们要做一个成绩单,把六门课的成绩保存到文件里.
步骤:1 打开建立一个文件 2 输入成绩  3 把输入的数据写到文件里 4 显示你的成绩单
OPEN "成绩单.TXT" FOR OUTPUT AS #1
PRINT #1,"6门课的成绩单"
FOR I=1 TO 6
PRINT "请输入第"; I; "门课的成绩__";
INPUT N
PRINT #1,"请输入第";I;"门课的成绩__",N
NEXT I
CLOSE
SHELL "NOTEPAD 成绩单.TXT"
这时就能看到你生成的文件了!
SHELL 可以调用外部的命令、程序 。  这个NOTEPAD实际上就是WINDOWS的记事本程序
作者:qb45      发表时间:2005-3-1 14:49:00 
万圣节是什么节 第2楼 
教程二
我一开始讲文件的操作,是想通过学习文件的操作,你以后可以做很多事情,在电脑上的文件你想怎么弄都可以了,我看QB的文件操作在所有编程语言中是最方便、最简单、最强大的,而且和底成DOS中断很配合!
看到初学者有个误区,以为文件操作最难,实际上,这个放在最后一章,并不是最难,在我看来所有的都一样难,也都一样简单,最难的是书上没有讲的,可能写教材的人也不知道如何用,这个才难!
这里是关于OPEN 语句 的用法
格式:OPEN <;文件名> FOR <;读写方式> AS#<;文件号>
<;读写方式>:
OUTPUT:写数据,向文件输出;
INPUT:读数
据,从文件读入;
APPEND:写数据:添加记录;
BINARY:以2进制方式打开,可以读,也可以写
<;文件号>:即文件缓冲区号,每一个文件都要指定一个不同的文件号(1~225) 说明:
以OUTPUT方式打开文件,建立新文件,将删除已存在的文件。
以INPUT方式打开已存在的文件。
以APPEND方式打开文件,可在文件后面添加内容,不影响以前的东西
以BINARY方式打开文件,可在文件的任意位置读写
我们从下面这个例子来继续学习!
要求输出以下图形
*
咏梅演员**
***
****
*****
******
先看看书上的标准答案
FOR I=1 TO 5
FOR J=1 TO I
PRINT “*”;
NEXT J
PRINT
NEXT I
要分析这个程序,请先看看PRINT 的用法(print 如果不带分号是换行,带分号是紧奏输出,带逗号是隔几位输出,可以自己改改看看)
当I=1的时候里面的FOR循环一次,打印一个*号然后退出循环,
外面这个循环里的PRINT起换行的作用!
当I=2的时候里面的FOR循环2次,打印两个*号然后退出循环,
。。。。。。
这样就出来了!
在QB里面有个STRING的函数,STRING$S$=STRING$(n,x$)返回n个x$第一个字符组成的字符串
我们利用它可以只用一个循环就搞定!
FOR I=1 TO 5
PRINT STRING$(I,"*")
NEXT I
除了这些,很多方法能做出来
最好的就是这个
PRINT "*"
PRINT "**"
PRINT "***"
PRINT "****"
PRINT "*****"
这个好处只有真正来做一个程序时才能了解!
我写一个程序,最少有55%的时间在调试它!作为一个程序员,最希望自己的程序短小,精练,占用资源少,象这样代码少,还不要紧,如果程序规模大了,写得难看懂,是不利于调试和维护的,这个没有实践是不能体会的,各个方面得去平衡,我喜欢直接用语句显示出来.
我想这个谁都能看懂吧,也无须解释!
如果有个文本文件,内容就是这样
*
**
***
****
*****
******
我们可以用OPEN语句打开文件读出并打印来
如果没有这个文件,也可以编程弄一个!
泰安邮编
程序如下:
OPEN "DEMO.TXT" FOR OUTPUT AS #1
FOR I=1 TO 5
PRINT #1, STRING$(I,"*")
NEXT I
CLOSE
运行以后就有了这个文本文件,你可以在win里面直接打开看!
当然也可以自己编程读出并显示,如:
OPRN "DEMO.TXT" FOR INPUT AS #1
DO UNTIL EOF(1)
INPUT #1,RE$
PRINT RE$
LOOP
CLOSE
看到这里,大家就应该能自己用程序建立文件了!还有,你也能编程读电脑里的文本文件
我们来看个例子:题目要求写一个计算六门功课、让*号跑动、报警声这三个功能的程序!
编程思路是这样->把这3个相应的功能做成子程序,->然后根据选择执行相应的子程序!
这种编程的思想就是模块化编程
在你的主程序中是看不到子程序,按F2键可以看到所有的子程序
在qb中可以不