精品偷拍一区二区三区,亚洲精品永久 码,亚洲综合日韩精品欧美国产,亚洲国产日韩a在线亚洲

  • <center id="usuqs"></center>
  • 
    
  • c語(yǔ)言計(jì)算器程序設(shè)計(jì)包含加減乘除簡(jiǎn)單的函數(shù)運(yùn)算

    c語(yǔ)言計(jì)算器程序設(shè)計(jì)包含加減乘除簡(jiǎn)單的函數(shù)運(yùn)算
    其他人氣:685 ℃時(shí)間:2020-03-28 13:19:41
    優(yōu)質(zhì)解答
    實(shí)用計(jì)算器之程序設(shè)計(jì)


    [摘 要]多用計(jì)算器的構(gòu)思及設(shè)計(jì)代碼
    [關(guān)鍵詞]多用計(jì)算器;設(shè)計(jì)

    數(shù)值計(jì)算可以說(shuō)是日常最頻繁的工作了,WIN98提供了“計(jì)算器”軟件供用戶(hù)使用,該軟件可以處理一般的一步四則運(yùn)算,例如:3+2、5/3等等,但在日常中用戶(hù)經(jīng)常遇到多步四則運(yùn)算問(wèn)題,例如:3+4*5-4/2,45*34/2+18*7等等,那么該個(gè)計(jì)算器就無(wú)法勝任了,作者制作了一個(gè)實(shí)用的計(jì)算器,該計(jì)算器新增不少功能:(程序界面如圖)

    1.可以實(shí)現(xiàn)連續(xù)的四則運(yùn)算
    2.可以實(shí)現(xiàn)輸入式子的顯示
    3.可以方便計(jì)算個(gè)人所得稅
    4.鼠標(biāo)、鍵盤(pán)均可輸入數(shù)據(jù)
    5.操作界面友好
    6.擊鍵可發(fā)聲

    構(gòu)建該個(gè)計(jì)算器所需研究及解決的核心問(wèn)題有如下幾個(gè):1、連乘求值?2、字符顯示 3、鍵盤(pán)輸入?4、擊鍵發(fā)聲?5、個(gè)人所得稅法規(guī),為了使大家對(duì)程序有更一步認(rèn)識(shí),現(xiàn)將代碼提供給讀者參考:
    *定義數(shù)組及窗體變量
    Dim number2(0 To 50) As Double
    Dim number(0 To 50) As Double
    Dim z As Integer
    Dim k As Integer, r As Integer
    Dim j As Integer
    Dim str As String
    *調(diào)用名為“playsound”的API函數(shù)
    Private Declare Function PlaySound Lib "winmm.dll" Alias "PlaySoundA" (ByVal lpszName As String, ByVal hModule As Long, ByVal dwFlags As Long) As Long
    Private Const SND_FILENAME = &H20000?
    Private Const SND_ASYNC = &H1?
    Private Const SND_SYNC = &H0
    *判斷通用過(guò)程
    Sub pianduan(p As String)
    r = 0
    Dim i As Integer, l As Integer, h As Integer
    h = 0
    i = 1
    If InStr(Trim$(p), "*")0 Then
    k = k + 1
    End If
    If InStr(Trim$(p), "/")0 Then
    r = r + 1
    End If
    End Sub
    *連乘通用過(guò)程(略)
    *各按鈕事件過(guò)程
    Private sub Command1_Click(Index As Integer)
    PlaySound App.Path & "\start.wav", 0, SND_SYNC
    Text1.Text = Text1.Text + Command1(Index).Caption
    Text2.Text = Text2.Text + Command1(Index).Caption
    Text1.SetFocus
    End Sub
    rivate sub Command10_Click()
    PlaySound App.Path & "\start.wav", 0, SND_SYNC
    str = Text3.Text
    End Sub
    Private sub Command11_Click()
    PlaySound App.Path & "\start.wav", 0, SND_SYNC
    Text3.Text = str
    End Sub
    rivate sub Command2_Click()
    PlaySound App.Path & "\start.wav", 0, SND_SYNC
    Dim totle As Double
    Dim n As Integer
    Call pianduan(Text1.Text)
    If k >= 1 Or r >= 1 Then
    Call liancheng(totle)
    number2(z) = totle
    If Mid$(Trim$(Text1.Text), 1, 1) = "-" Then
    number2(z) = -totle
    End If
    k = 0: r = 0
    Else
    number2(z) = Val(Text1.Text)
    End If
    Text1.Text = ""
    Text2.Text = Text2 + "+"
    z = z + 1
    Text1.SetFocus
    End Sub
    rivate sub Command3_Click()
    PlaySound App.Path & "\start.wav", 0, SND_SYNC
    Dim totle As Double
    Dim n As Integer
    Call pianduan(Text1.Text)
    If k >= 1 Or r >= 1 Then
    Call liancheng(totle)
    number2(z) = totle
    If Mid$(Trim$(Text1.Text), 1, 1) = "-" Then
    number2(z) = -totle
    End If
    k = 0: r = 0
    Else
    number2(z) = Val(Text1.Text)
    End If
    Text1.Text = ""
    Text2.Text = Text2 + "-"
    Text1.Text = Text1.Text & "-"
    z = z + 1
    Text1.SetFocus
    End Sub
    Private sub Command4_Click()
    PlaySound App.Path & "\start.wav", 0, SND_SYNC
    Text2.Text = Text2.Text + "*"
    Text1.Text = Text1.Text + "*"
    Text1.SetFocus
    End Sub
    rivate sub Command5_Click()
    PlaySound App.Path & "\start.wav", 0, SND_SYNC
    Text2.Text = Text2 + "/"
    Text1.Text = Text1 + "/"
    Text1.SetFocus
    End Sub
    Private sub Command6_Click()
    PlaySound App.Path & "\sound.wav", 0, SND_SYNC
    Dim totle As Double
    Dim n As Integer
    Call pianduan(Text1.Text)
    If k >= 1 Or r >= 1 Then
    Call liancheng(totle)
    number2(z) = totle
    If Mid$(Trim$(Text1.Text), 1, 1) = "-" Then
    number2(z) = -totle
    End If
    k = 0: r = 0
    Else
    number2(z) = Val(Text1.Text)
    End If
    Text1.Text = ""
    z = z + 1
    Dim dengyu As Double
    Dim v As Integer
    For v = 0 To 50
    dengyu = dengyu + number2(v)
    Next v
    If dengyu < 0 Then
    Text3.ForeColor = &HFF&
    Else
    Text3.ForeColor = &HFF0000
    End If
    Text3.Text = dengyu
    Text1.SetFocus
    If Len(Text3.Text) >= 14 Then
    calcresult.Show
    End If
    End Sub
    rivate sub Command7_Click()
    PlaySound App.Path & "\start.wav", 0, SND_SYNC
    z = 0: k = 0: r = 0: j = 0
    Dim i As Integer
    For i = 0 To 50
    number(i) = 0
    number2(i) = 0
    Next i
    Text1.Text = ""
    Text2.Text = ""
    Text3.Text = ""
    Text1.SetFocus
    End Sub
    rivate sub Command8_Click()
    PlaySound App.Path & "\start.wav", 0, SND_SYNC
    If Val(Text3.Text) = 0 Then
    MsgBox "除數(shù)不能為0!"
    Exit Sub
    End If
    Text3.Text = 1 / Val(Text3.Text)
    End Sub
    Private sub Command9_Click()
    PlaySound App.Path & "\start.wav", 0, SND_SYNC
    Text3.ForeColor = &HFF0000
    Text3.Text = Val(Text3.Text) * Val(Text3.Text)
    End Sub
    rivate sub muninternet_Click()
    Dim i
    i = Shell("C:\Program Files\InternetExplorer\iexplore.exe", vbMaximizedFocus)
    End Sub
    rivate sub munmp3_Click()
    Dim i
    i = Shell("C:\Program Files\Windows Media Player\mplayer2", vbNormalNoFocus)
    End Sub
    Private sub munsm_Click()
    Dialog.Show
    End Sub
    rivate sub muntax_Click()
    tax.Show
    End Sub
    rivate sub munver_Click()
    ver.Show
    End Sub
    rivate sub notepad_Click()
    Dim i
    i = Shell("c:\windows\notepad", vbNormalFocus)
    End Sub
    Private sub Text1_KeyPress(KeyAscii As Integer)
    PlaySound App.Path & "\start.wav", 0, SND_SYNC
    Dim num As Integer
    num = Val(KeyAscii)
    If num > 47 And num < 58 Then
    Text1.Text = Text1.Text + CStr(num - 48)
    Text2.Text = Text2.Text + CStr(num - 48)
    End If
    If num = 46 Then
    Text1.Text = Text1.Text + "."
    Text2.Text = Text2.Text + "."
    End If
    If KeyAscii = 43 Then
    Dim totle As Double
    Dim n As Integer
    Call pianduan(Text1.Text)
    If k >= 1 Or r >= 1 Then
    Call liancheng(totle)
    number2(z) = totle
    If Mid$(Trim$(Text1.Text), 1, 1) = "-" Then
    number2(z) = -totle
    End If
    k = 0: r = 0
    Else
    number2(z) = Val(Text1.Text)
    End If
    Text1.Text = ""
    Text2.Text = Text2 + "+"
    z = z + 1
    End If
    If KeyAscii = 45 Then
    Call pianduan(Text1.Text)
    If k >= 1 Or r >= 1 Then
    Call liancheng(totle)
    number2(z) = totle
    If Mid$(Trim$(Text1.Text), 1, 1) = "-" Then
    number2(z) = -totle
    End If
    k = 0: r = 0
    Else
    number2(z) = Val(Text1.Text)
    End If
    Text1.Text = ""
    Text2.Text = Text2 + "-"
    Text1.Text = Text1.Text & "-"
    z = z + 1
    End If
    If KeyAscii = 42 Then
    Text2.Text = Text2.Text + "*"
    Text1.Text = Text1.Text + "*"
    End If
    If KeyAscii = 47 Then
    Text2.Text = Text2.Text + "/"
    Text1.Text = Text1.Text + "/"
    End If
    If KeyAscii = vbKeyReturn Then
    PlaySound App.Path & "\sound.wav", 0, SND_SYNC
    Call pianduan(Text1.Text)
    If k >= 1 Or r >= 1 Then
    Call liancheng(totle)
    number2(z) = totle
    If Mid$(Trim$(Text1.Text), 1, 1) = "-" Then
    number2(z) = -totle
    End If
    k = 0: r = 0
    Else
    number2(z) = Val(Text1.Text)
    End If
    Text1.Text = ""
    z = z + 1
    Dim dengyu As Double
    Dim v As Integer
    For v = 0 To 50
    dengyu = dengyu + number2(v)
    Next v
    If dengyu < 0 Then
    Text3.ForeColor = &HFF&
    Else
    Text3.ForeColor = &HFF0000
    End If
    Text3.Text = dengyu
    End If
    If KeyAscii = vbKeyEscape Then
    z = 0: k = 0: r = 0: j = 0
    Dim i As Integer
    For i = 0 To 50
    number(i) = 0
    number2(i) = 0
    Next i
    Text1.Text = ""
    Text2.Text = ""
    Text3.Text = ""
    Text1.SetFocus
    End If
    If Len(Text3.Text) >= 14 Then
    calcresult.Show
    End If
    End Sub
    rivate sub Text3_Change()
    tax2.Text1 = Text3.Text
    End Sub
    我來(lái)回答
    類(lèi)似推薦
    請(qǐng)使用1024x768 IE6.0或更高版本瀏覽器瀏覽本站點(diǎn),以保證最佳閱讀效果。本頁(yè)提供作業(yè)小助手,一起搜作業(yè)以及作業(yè)好幫手最新版!
    版權(quán)所有 CopyRight © 2012-2024 作業(yè)小助手 All Rights Reserved. 手機(jī)版