02年度初级程序员下午试题(2)
出处:日期2004-03-18

            试题五

            阅读下列说明和 C 代码,将应填入__(n)__处的字句写在答题纸的对应栏内。

            [程序5的说明]

            本程序从键盘读入若干个字符串,删除每个字符串中的指定字符后,将该字符串保存到正文文件text.txt 中。若读入一个空串,则结束程序。

            要删除的指定字符存放在字符指针 delete 指向的字符串中。

            程序中对字符串中的字符逐一进行判断,若不是 delete 指向的字符串中字符,则写到文件 text.txt中。

            函数 int CharlnString( char ch,char*str ) 可以判断字符 ch 是否在字符串 str

            中。如在串中,则返回 1;如不在串中,则返回 0。

            [程序 5]

            #include

            #include

            #include

            char *delete = "aeiouAEIOU";

            int CharInString( char Ch,char *str )

            { char *S;

            S = str;

            while ( __(l)__ )

            if( __(2)__ = ch ) return 1;

            return 0;

            }

            main()

            { FILE *fp;

            char cBuf[256],*p;

            if (( fp = __(3)__ ) = NULL ) {

            printf ( "file open error.\ n" );exit(0):

            }

            while ( strlen(gets(cBuf)) != 0) {

            p = cBuf;

            while ( *p != '\ 0’) {

            if ( !CharlnString( *p,deletel ))

            __(4)__;

            p++;

            }

            fputc( '\n',fp );

            }

            __(5)__;

            }

            试题六

            阅读以下应用说明以及用 VisualBasic

            开发过程中进行的属性设置和所编写的程序代码,将应填入__(n)__处的字句写在答题纸的对应栏内。

            [应用说明]

            某应用程序的运行窗口如下图所示:

            

            若用户单击其中的命令按钮,该窗口内就会出现“欢迎”字句,但显示约 1 秒钟后又会自动消失。

            在开发过程中需要设置的有关属性如下:

            [属性设置]

            

            在开发过程中,需要编写的程序代码如下:

            [程序代码]

            Private Sub CmdDsp_C1ick()

            Timerl.__(3)__ = True

            Label.Visible = __(4)__

            End Sub

            Private Sub Timerl_Timer()

            Timerl.Enabled =__(5)__

            Label.Visible = False

            End Sub

            从下列的 2 道试题(试题七至试题八)中任选1道解答。如果解答的试题数超过 1 道,则题号小的 1 道解答有效。

            试题七

            阅读下列程序说明和 C 代码,将应填入__(n)__的字句写在答题纸的对应栏内。

            [程序 7 说明]

            某银行共发出 M 张储蓄卡,每张储蓄卡拥有唯一的卡号,每天每张储蓄卡至多支持储蓄卡持有者的 N 笔“存款”或“取款”业务。程序中用数组

            card[M][N+3] 中的每一行存放一张储蓄卡的有关信息,其中:

            card[i][0]存放第 i 张卡的卡号;

            card[i][1]存放第 i 张卡的余额;

            card[i][2]存放第 i 张卡的当日业务实际发生笔数;

            card[i][3]~card[i][N+2]存放第 i 张卡的当日存取款金额,正值代表存款,负值代表取款。

            当持卡者输入正确的卡号、存款或取款金额后,程序进行相应的处理:若输入了不正确的数据,程序会提示持卡者重新输入;若输入的卡号为负数时,银行终止当日业务。

            [程序7]

            #include

            #define M 6

            #define N 5

            long card[M][N+3]={{ 9801,2000,0,},{9812,2000,2,},

            { 9753,3000,1,},{ 8750,500,0,},

            { 9604,2800,3,},{ 8901,5000,5} }:

            int Locate( 1ong card[][N+3],int m ,long no )

            { int i;

            for ( i = O;i < m;i++ )

            if( __(l)__ = no ) return i;

            __(2)__;

            }

            main()

            { long cardNo,money; int k:

            while(1) {

            printf ( "请输入卡号:\ n" );

            scanf( "%ld",&cardNo );

            if ( cardNo < 0 ) break;

            k = Locate( card,M,cardNo );

            if ( k == -1 ) {

            printf ( "不存在%ld号的储蓄卡\n",cardNo ); continue;

            }

            printf ( "请输入卡金额( 正值代表存款,负值代表取款 ):\n" );

            scanf ( "%ld",&money );

            if ( card[k][1]+money < 0 ) {

            printf ( "存款余额不足,不能完成本次的取款业务\n" ); continue;

            }

            if( card[k][2] == N ){

            printf ( "已完成本卡的当日业务\n" ); continue;

            }

            /* 处理一笔业务的数据 */

            card[k][__(3)__] = money;

            __(4)__;

            __(5)__++;

            }

            }

            试题八

            阅读以下应用说明以及用 VisualBasic 开发过程中所编写的程序代码,将应填入__(n)__处的字句写在答题纸的对应栏内。

            [应用说明]

            某应用程序的运行窗口如下图所示:

            

            用户可在“课程”列表框(名为 LstCourse )中用鼠标选择某门课程,该课程名就会在“选修”列表框(名为 LstSelected

            )中列出,这种操作可进行多次。单击“全选”按钮(名为 CmdAll

            ),意味着将“课程”列表框中的全部课程都在“选修”列表框中列出。单击“全清”按钮(名为 CmdClere

            ),意味着将“选修”列表框清空。若在“选修”列表框中用鼠标选择某门课程,再单击“删项”按钮(名为CmdDelek

            ),就会将此课程从“选修”列表框中删除。

            [程序代码]

            Private Sub CmdAll_Click()

            LstSelected.Clear

            For i = __(l)__

            LstSelected.Addltem __(2)__

            Next

            End Sub

            Private Sub CmdClear_Click()

            __(3)__

            End Sub

            Private Sub CmdDelete_C1ick()

            LstSelected.Removeltem __(4)__

            End Sub

            Private Sub LstCourse_Click()

            LstSelected.Addltem __(5)__

            End Sub

百灵编辑:宝葵

  特别说明:由于各方面情况的不断调整与变化,百灵网所提供的所有考试信息仅供参考,敬请考生以权威部门公布的正式信息为准。

推荐
关注高校自主招生
04年度注会考试山东考区报名时间
计算机专业技术资格(水平)考试12日起报名
名师详解2004年高考考试大纲
04考研调剂、复试及录取指南
04同等学力申硕考试5日起报名
两会:教育振兴 国运所系
2004年度注册会计师全国统一考试报名简章