- 1、本文档共7页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
学校 - 【任务6-1】从键盘上输入任意一串字符,分
【任务目的】
1. 利用任务驱动法掌握数组应用的常用算法——数据排序(选择法、冒泡法),数据查找(顺序法、折半法),有序数列的插入和删除。2. 掌握自定义类型数据(变量和数组)的使用。
【任务简介】
1.练习并掌握数组的排序算法
2.练习并掌握数据的查找算法
3.练习并掌握有序数组(数列)的插入与删除算法
【成品展示】□全班展示 □学生交流
【评价呈现】□学生互评 □组间互评 □教师评价
【时间要求】2课时
1. 练习并掌握数组的排序算法
【任务6-1】从键盘上输入任意一串字符,分别用冒泡法和选择法,对输入的字符串按ASCII码从小到大排序,并输出排序后的结果。?(工程文件保存为“Lab6-1.vbp”,窗体文件保存为“Lab6-1.frm”)(1)简要分析
①排序算法??? 冒泡法和选择法是常用的排序算法(算法步骤和程序见理论教材《Visual Basic程序设计教程》第110页至113页),两种算法在实现时程序中的内外循环次数是相同的,即n个元素排序时须比较n-1趟,在第i(i=1,2,...,n-1)趟中比较、交换元素的次数为n-i次;两种算法的区别在于每次比较、交换的两个元素是不同的。??? ②字符数组的定义??? 排序时需用字符类型的数组来存放被排序字符,而从键盘输入的字符是保存在串中的,因此需要从串中顺序取出字符并存入字符数组。??? 取字符的操作可用Mid函数来实现。Mid函数的格式为:
??????? Mid(string, start,[length])
??? 其作用是从串string的start位置开始,取出length个字符。??? 本题中需要将输入串中的字符一个一个地取出后存入字符数组,取出第i个字符然后存入数组S的语句可写为:S(i) = Mid(Si, i, 1)
③输入输出??? 字符串的输入可用InputBox函数;输出操作较简单,只需循环输出排序后字符数组中的元素即可。(2)任务步骤??? ①界面设计??? 新建一“标准EXE”工程,保存为“Lab6-1.vbp”;在工程中新建一窗体,其Caption属性值设置为“任务6-1”,窗体文件保存为“Lab6-1.frm”。??? ②代码参考
Option Base 1
Private Sub Form_Click()
Dim Si As String, S(40) As String * 1, i%, j%, n%, t$
Si = InputBox(请输入英文字符串(20字符以内):)
Print 排序前字符串为:
Print Si
n = Len(Si)
For i = 1 To n
S(i) = Mid(Si, i, 1)
Next i
For i = 1 To n - 1
For j = 1 To n - i
If S(j) S(j + 1) Then
t = S(j)
S(j) = S(j + 1)
S(j + 1) = t
End If
Next j
Next i
Print 排序后字符串为:
For i = 1 To n
Print S(i);
Next i
Print
End Sub
Private Sub Form_Load()
AutoRedraw = True
Print 字符串排序任务:
Print 单击窗体开始...
Print
End Sub
??? ③运行?运行程序并单击窗体,输入字符串即可。图6-1所示是程序的一次运行结果。
图6-1 输出排序结果
??? (3)思考??? 如果要求输入字符串的长度不固定或不做限制,程序应如何实现?(提示:用动态的字符数组来实现,该字符数组的长度在重新定义时应等于输入串中字符的个数)
2.练习并掌握数据的查找算法
【任务6-2】从键盘上输入任意一串字符S,然后输入一个字符(设字符变量名为c),用顺序查找的方法查找输入的字符c是否出现在S中,若出现则输出其首次出现的位置(下标),没出现则输出查找失败的信息。??? (工程文件保存为“Lab6-2.vbp”,窗体文件保存为“Lab6-2.frm”)
图6-2 字符查找
(1)简要分析??? 顺序查找即从数组的某个元素(字符)开始,依次比较数组元素是否与被查找元素(字符)相等,若相等则查找成功,否则继续比较下一个元素。(2)代码参考
Private Sub Form_Click()
Dim Si As String, c As String * 1, S(40) As String * 1, i%, n%, find
您可能关注的文档
- 姜堰市第二中学2009-2010学年度第一学期期中考试.doc
- 姿势动词带趋向补语情况分析.ppt
- 威海市高中语文教学案例.doc
- 威高国际1173 - 公告.doc
- 威尔斯医院酗酒及药物滥用中心.pdf
- 娇子杯新世纪成都百万职工技能大赛计算机程序设计员.doc
- 婚礼邀请.doc
- 婚育与健康 综合办公室 2004年第6期(总第6期) 2004年8月31日 家事.doc
- 媒介写作广告文案采访.doc
- 媒体 - 令字符串 ” 皿 进行 。 使用时 , 按照硬件.pdf
- 甘肃省白银市会宁县第一中学2025届高三3月份第一次模拟考试化学试卷含解析.doc
- 2025届吉林市第一中学高考考前模拟生物试题含解析.doc
- 四川省三台县芦溪中学2025届高三下第一次测试生物试题含解析.doc
- 2025届江苏省启东市吕四中学高三适应性调研考试历史试题含解析.doc
- 浙江省宁波市十校2025届高三二诊模拟考试历史试卷含解析.doc
- 甘肃省甘南2025届高考生物必刷试卷含解析.doc
- 河北省石家庄市一中、唐山一中等“五个一”名校2025届高考历史四模试卷含解析.doc
- 江西省南昌市进贤一中2025届高考生物考前最后一卷预测卷含解析.doc
- 甘肃省白银市会宁县第四中学2025届高三第二次模拟考试历史试卷含解析.doc
- 宁夏银川市宁夏大学附属中学2025届高考化学押题试卷含解析.doc
文档评论(0)