主题:网友(从心开始)这是你要的电话薄程序
你说的做电话薄程序,我简单的做了一下
只是实验性质的!
1、用自定义一组数类型,有名字和号码,名字的长度是10,号码是30,整个是40
2、子程序有添加、查找两个(根据名字、或者是号码查找)
3、当直接按回车键时略过退出
4、用2进制方式打开文件(也可以用随即方式)
5、计算在位置
下面是程序
'自定义数据类型
TYPE recData
mingzhi AS STRING * 10
' xingbie AS INTEGER
dianhua AS STRING * 30
END TYPE
CLS
DIM rec AS recData
'定义显示菜单数组
DIM Menu$(3)
Menu$(0) = "Dian Hua Cheng Xu Yan Shi"
Menu$(1) = "1 Input Rec"
Menu$(2) = "2 Find Rec"
Menu$(3) = "3 Exit"
'显示菜单
COLOR 3
LOCATE 4, 25: PRINT Menu$(i)
COLOR 4
LOCATE 5, 30:
PRINT " CODE:Qb45"
COLOR 7
FOR i = 1 TO 3
LOCATE 6 + i, 32: PRINT Menu$(i)
NEXT i
'用2进制方式打开电话本文件
file$ = "d:\test.txt"
OPEN file$ FOR BINARY AS #1
'等待选择
exe$ = INPUT$(1)
'根据选择执行相应的子程序
SELECT CASE exe$
CASE "1"
GOSUB addrec '选择1,执行添加电话
CASE "2"
GOSUB findrec '如果按2,执行查找
CASE "3"
END '退出
END SELECT
END
'添加号码的子程序
addrec:
DO
INPUT "Shu ru ming zhi -> ", rec.mingzhi
'INPUT "Shu ru xing bie", rec. xingbie
INPUT "Shu ru dianhua -> ", rec.dianhua
IF rec.mingzhi = SPACE$(10) THEN EXIT DO
PUT #1, , rec
LOOP
RETURN
'查找号码或者人名的子程序
findrec:
recnum = LEN(rec)
i = 0
INPUT "Shu ru ming zhi -> ", findmingzhi$
INPUT "Shu ru dianhua -> ", finddianhua$
DO
IF findmingzhi$ <> "" THEN
GET #1, i * recnum + 1, rec
IF RTRIM$(rec.mingzhi) = findmingzhi$ THEN
COLOR 15: PRINT rec.mingzhi, rec.dianhua
COLOR 7
EXIT DO
END IF
END IF
IF finddianhua$ <> "" THEN
PRINT "xx"
GET #1, i * recnum + 1, rec
IF RTRIM$(rec.dianhua) = finddianhua$ THEN
COLOR 15: PRINT rec.mingzhi, rec.dianhua
COLOR 7
EXIT DO
END IF
END IF
i = i + 1
IF i > LOF(1) THEN PRINT "Sorry ! No ": EXIT DO
LOOP
RETURN
只是实验性质的!
1、用自定义一组数类型,有名字和号码,名字的长度是10,号码是30,整个是40
2、子程序有添加、查找两个(根据名字、或者是号码查找)
3、当直接按回车键时略过退出
4、用2进制方式打开文件(也可以用随即方式)
5、计算在位置
下面是程序
'自定义数据类型
TYPE recData
mingzhi AS STRING * 10
' xingbie AS INTEGER
dianhua AS STRING * 30
END TYPE
CLS
DIM rec AS recData
'定义显示菜单数组
DIM Menu$(3)
Menu$(0) = "Dian Hua Cheng Xu Yan Shi"
Menu$(1) = "1 Input Rec"
Menu$(2) = "2 Find Rec"
Menu$(3) = "3 Exit"
'显示菜单
COLOR 3
LOCATE 4, 25: PRINT Menu$(i)
COLOR 4
LOCATE 5, 30:
PRINT " CODE:Qb45"
COLOR 7
FOR i = 1 TO 3
LOCATE 6 + i, 32: PRINT Menu$(i)
NEXT i
'用2进制方式打开电话本文件
file$ = "d:\test.txt"
OPEN file$ FOR BINARY AS #1
'等待选择
exe$ = INPUT$(1)
'根据选择执行相应的子程序
SELECT CASE exe$
CASE "1"
GOSUB addrec '选择1,执行添加电话
CASE "2"
GOSUB findrec '如果按2,执行查找
CASE "3"
END '退出
END SELECT
END
'添加号码的子程序
addrec:
DO
INPUT "Shu ru ming zhi -> ", rec.mingzhi
'INPUT "Shu ru xing bie", rec. xingbie
INPUT "Shu ru dianhua -> ", rec.dianhua
IF rec.mingzhi = SPACE$(10) THEN EXIT DO
PUT #1, , rec
LOOP
RETURN
'查找号码或者人名的子程序
findrec:
recnum = LEN(rec)
i = 0
INPUT "Shu ru ming zhi -> ", findmingzhi$
INPUT "Shu ru dianhua -> ", finddianhua$
DO
IF findmingzhi$ <> "" THEN
GET #1, i * recnum + 1, rec
IF RTRIM$(rec.mingzhi) = findmingzhi$ THEN
COLOR 15: PRINT rec.mingzhi, rec.dianhua
COLOR 7
EXIT DO
END IF
END IF
IF finddianhua$ <> "" THEN
PRINT "xx"
GET #1, i * recnum + 1, rec
IF RTRIM$(rec.dianhua) = finddianhua$ THEN
COLOR 15: PRINT rec.mingzhi, rec.dianhua
COLOR 7
EXIT DO
END IF
END IF
i = i + 1
IF i > LOF(1) THEN PRINT "Sorry ! No ": EXIT DO
LOOP
RETURN