【编程5】用格式输入输岀命令对 student. dbt数据库编写按姓名査询程 序,使其奖学金和成绩字段可以修改。库中有字段:name(c,8), birthday(d, 8), score(n, 3), schoship(n, 3). SET TALK OFF USE Student INDE name CLEA ACCEPT“请输入姓名:"toxm SEEK Xm IF NOT. EOFO @4,10SAY"姓名:"+name @4,30SAY"出生日期:"+DToC( birthday) @5,10SAY"成绩:" GET score @5,30SAY"奖学金:" GET schoship READ ELSE ?"查无此人!" ENDIF 思考 USE 1、将 SEEK xm改为 FIND Xm可以吗? RETURN 2、将NOT.EOF0改为 FFOUND可以吗 3、所有字段都可以修改或都不可以修改如何改? FoxproForWindowshttp://cc.synu.edu.cn 6
FoxPro For Windows http://cc.synu.edu.cn 6 SET TALK OFF USE student INDE name CLEA ACCEPT “请输入姓名:" to xm SEEK xm IF .NOT. EOF() @4,10 SAY "姓名:"+name @4,30 SAY "出生日期:"+DTOC(birthday) @5,10 SAY "成绩:" GET score @5,30 SAY "奖学金:" GET schoship READ ELSE ? "查无此人!" ENDIF USE RETURN 【编程5】用格式输入输出命令对student.dbf数据库编写按姓名查询程 序,使其奖学金和成绩字段可以修改。库中有字段:name(c,8), birthday(d,8),score(n,3),schoship(n,3)。 思考: 1、将SEEK xm 改为FIND xm 可以吗? 2、将IF .NOT. EOF()改为IF FOUND()可以吗? 3、所有字段都可以修改或都不可以修改如何改?
编程6】求1~100之间能被11整除的偶数个数以及它们之 和 ° SET TALK OFF STORE O TO sn FOR i=1TO 100 FMOD(,11)=0.AND.MOD(,2)=0 n=n+1 INT(Gi/11)=1/11 AND INT(/2)=1/2 S=StI ENDIF ENDFOR s=",s,n=,n SET TALK ON RETURN FoxproForWindowshttp://cc.synu.edu.cn 7
FoxPro For Windows http://cc.synu.edu.cn 7 【编程6】求1~100之间能被11整除的偶数个数以及它们之 和。 SET TALK OFF STORE 0 TO s,n FOR i=1 TO 100 IF MOD(i,11)=0 .AND. MOD(i,2)=0 n=n+1 s=s+i ENDIF ENDFOR ? " s=",s, " n=",n SET TALK ON RETURN INT(i/11)=i/11 .AND. INT(i/2)=i/2
编程刁输入n个数,求其中能被3整除的数之和。 SET TALK OFF INPUT n="TO n s=0 FOR j=1 TO n NPUT“m="Tom IF INT( m/3)=m/3 MOD(m, 3)=0 s=Stm ENDIF ENDFOR ?"s=",s SET TALK ON FoxproForWindowshttp://cc.synu.edu.cn 6
FoxPro For Windows http://cc.synu.edu.cn 8 【编程7】输入n个数,求其中能被3整除的数之和。 SET TALK OFF INPUT "n=" TO n s=0 FOR i=1 TO n INPUT “m=" TO m IF INT( m/3)=m/3 MOD(m,3)=0 s=s+m ENDIF ENDFOR ? "s=",s SET TALK ON
编程8】统计键盘输入字符串其中含有几个大写字母。 SET TALK OFF m=0 ACCEPT"请输入一串字符:"Tox nELEN(X) FOR iE1TO n IF UPPER(SUBSTR(X, i, 1)= SUBSTR(X, i, 1) m=m+1 ENDIF ENDFOR ?m SET TALK ON FoxproForWindowshttp://cc.synu.edu.cn 9
FoxPro For Windows http://cc.synu.edu.cn 9 【编程8】统计键盘输入字符串其中含有几个大写字母。 SET TALK OFF m=0 ACCEPT "请输入一串字符:" TO x n=LEN(x) FOR i=1 TO n IF UPPER(SUBSTR(x,i,1))= SUBSTR(x,i,1) m=m+1 ENDIF ENDFOR ? m SET TALK ON