level 1
将文本框Text1中的内容记录到变量str1中,并令大写单词计数k=1(严格来说,k并不是单词计数,而是还额外加了1,但也不一定;而且,由于k的这种含义,这个代码是可能出错的)
循环遍历str1的每个字符
取出str1的第i个字符(第1空填 Mid(str1, i, 1)),存入变量s中
如果s是大写字母,则将它拼接到临时变量str2中;否则,如果s是小写字母(说实话这个判断是多余的),则当str2不为空时(即刚取完一个大写字母串),给数组char增加一个元素(第2空填 ReDim Preserve char(k),这个代码也可以从下面抄到
循环结束后,如果str2中还有字母串,则再给数组char增加一个元素,将str2存放到这个元素的位置(注意,这里就是可能出错的地方了,这里只处理了str2不为空的情况,但如果str2为空,即输入的原始字母串是以小写字母结尾的,则k仍然表示大写单词计数加1,这样后面的循环就会出错;所以这个If应该加一个Else,当str2为空时,令k减去1)
循环,将char中的元素逐个拼接到文本框Text2中(第4空填 Text2 & char(i) & " " ,注意每两个单词之间要补空格,这里采取了每个单词之后加空格的做法)
4.这个程序用了辅助数组排序的方法,当需要保留原始数据的顺序而又需要排序时,可以增加一个辅助数组,对辅助数组进行排序
程序执行过程:
先循环产生一个由随机数组成的数组,每产生一个数都复制一份,同时存入数组a和b中
然后对数组a进行排序,这里进行的是完整的排序过程,其实要找第n大的数字,只要进行n轮排序就足够了,没必要排完
具体排序过程:外层i循环9次(9轮排序),内层j从i+1循环到10(第1空),进行两两比较的直接排序
排序完成后,数组a中下标为n的元素a(n)就是第n大的数,在数组b中查找该数的位置,找到之后,输出该数的位置j(第2空)和值a(n)或b(j)(第3空,填哪个都可以)


