pcbar 发表于 2009-11-6 17:24:51

我来做个第一题:Dim $zm = 0, $sz = 0, $qt = 0
$x = InputBox("测试一", "请输入任意一串字符:")

For $i = 1 To StringLen($x)
        Switch Asc(StringMid($x, $i, 1))
                Case 48 To 57
                        $sz += 1
                Case 65 To 90, 97 To 122
                        $zm += 1
                Case Else
                        $qt += 1
        EndSwitch
Next

MsgBox(0, "统计结果:", "您刚才输入的字符串中字母有:" & $zm & "个;" & "数字有:" & $sz & "个;" & "其它字符:" & $qt & "个.")

pcbar 发表于 2009-11-7 15:38:34

论坛人气不行啊!
我来
第7题
#include "date.au3"
$y=InputBox("请输入年份","年","2009")
$m=InputBox("请输入月份","月","11")
$d=_DateDiff("D",$y&'/'&$m&"/01",_DateAdd('M',1,$y&'/'&$m&'/01'))

MsgBox(0,"结果",$y&"年"&$m&"月共有"&$d&"天!")

pcbar 发表于 2009-11-7 15:46:32

第8题$i=0
Do
$mm = InputBox("登录窗口","请输入登录密码:","","*","-1","130","-1","-1")
if $mm="abcdefg" Then
        MsgBox(0,'成功','祝贺你,成功登录!')
        Exit
Else
        MsgBox(48,'出错','对不起,密码错误,无法登录!')
EndIf
$i+=1
Until $i>=3
MsgBox(48,'出错','对不起,您已3次输错密码,系统退出!')

pcbar 发表于 2009-11-7 15:52:58

第9题
pusofalse 已做出,下面这个和他的算法不同,抛砖引玉吧$n=8
MsgBox(0,'计算阶乘',$n&'的阶乘等于:'&f($n))

Func f($x)
        If $x = 1 Or $x = 2 Then
                Return $x
        Else
                Return $x * f($x - 1)
        EndIf
EndFunc   ;==>f

pcbar 发表于 2009-11-7 20:00:12

第十题,方法很多#include "array.au3"
$n = 10
Dim $a, $t
For $i = 1 To $n
        ReDim $a[$i]
        For $j = 0 To $i - 1
                If $j = 0 Or $j = $i - 1 Then
                        $a[$j] = 1
                Else
                        $a[$j] = $t[$j - 1] + $t[$j]
                EndIf
        Next
        ConsoleWrite(_ArrayToString($a, ' ') & @CRLF)
        $t = $a
Next

KSTG4418220 发表于 2009-11-9 11:45:07

都试一哈哦
页: 1 2 [3]
查看完整版本: 给新手出一些题目做做!