Dim letters As Integer '声明模块级变量,此变量计算字母个数 Dim space As Integer '空格个数 Dim digit As Integer '数字个数 Dim others As Integer '其他字符个数
输入cmdStat_Click()事件过程代码 Private Sub cmdStat_Click() Dim InputStr As String '局部变量,此变量存储输入的字符串 Dim i As Integer '循环控制变量,整型 Dim CaseStr As String '此变量保存储所截取的字符 letters = 0 '初始化为0 space = 0 digit = 0 others = 0
InputStr = txtInput.Text '取得输入的字符串 For i = 1 To Len(InputStr) '开始分别统计个数 CaseStr = Mid(InputStr, i, 1) '取得某个字符 Select Case CaseStr Case "a" To "z", "A" To "Z" '如果字符是英文字母 letters = letters + 1 Case " " '如果字符是空格 space = space + 1 Case 0 To 9 '如果字符是数字 digit = digit + 1 Case Else '如果字符是其他字母 others = others + 1 End Select Next
'以下代码用来显示统计出的结果值 txtResult1.Text = letters txtResult2.Text = space txtResult3.Text = digit txtResult4.Text = others txtResult5.Text = Len(InputStr) End Sub
夏凉浮生
2024-05-19 09:18:39
首先,利用get()检测函数检测处多少个字符。 其次,循环,利用ASCII值判断每种,然后计数。思路有了,代码自己写吧。多多写代码对你又好处。 简单到这里还要写程序?哥哥。 给你个伪代码,你照着写。 start: 定义字符数组接受字符串。 int iLetterCount int iSpaceCount int iOtherCount while循环,getchar()统计个数。 for(i=0;i<字符串个数;i++) { if英文字母 iLetterCount++; else if空格 iSpaceCount++; else iOtherCount++; printf("英文字母%个,空格%d个,其他字符%d个\n",iLetterCount,iSpaceCount,iOtherCount); } 其中,你要判断空格和字母需要用到ASCII,自己查表就知道了。 哥们,这个伪代码已经基本要写出来了,出于对你负责,所以没有给你全代码,你要从这里看到我是怎么想的。明白么?