一.软件实现
本次作业采用visual studio ,c#语言
(一)登录界面

1.代码
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace 软件开发
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
string username = textBox1.Text;
string password = textBox2.Text;
if (username == "liu" && password == "123")
{
MessageBox.Show("登录成功!");
//此操作用于将窗口1跳转至窗口2
FrmMain frm=new FrmMain();
frm.Show();
}
else
{
MessageBox.Show("用户名或密码错误!");
}
}
private void button2_Click(object sender, EventArgs e)
{
this.Close();
}
}
}
(二)计算器界面

1.代码
using Microsoft.Win32;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Security.Policy;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;
using static System.Windows.Forms.VisualStyles.VisualStyleElement;
namespace 软件开发
{
public partial class FrmMain : Form
{
Double One, Two, Three;
String character;
private void button13_Click(object sender, EventArgs e)
{
string old = textBox1.Text;//取得当前的数据
if (old.Length > 0)
textBox1.Text = old.Remove(old.Length - 1);
}
private void button16_Click(object sender, EventArgs e)
{
One = Convert.ToDouble(textBox1.Text);
character = "+";
textBox1.Text = "";
}
private void button17_Click(object sender, EventArgs e)
{
One= Convert.ToDouble(textBox1.Text);
character = "-";
textBox1.Text = "";
}
private void button18_Click(object sender, EventArgs e)
{
One= Convert.ToDouble(textBox1.Text);
character = "×";
textBox1.Text = "";
}
private void button19_Click(object sender, EventArgs e)
{
One= Convert.ToDouble(textBox1.Text);
character = "/";
textBox1.Text = "";
}
private void button11_Click(object sender, EventArgs e)
{
int n = textBox1.Text.IndexOf(".");
if (n == -1)
textBox1.Text = textBox1.Text + ".";
}
private void button1_Click(object sender, EventArgs e)
{
textBox1.Text += "1";
}
private void button2_Click(object sender, EventArgs e)
{
textBox1.Text += "2";
}
private void button3_Click(object sender, EventArgs e)
{
textBox1.Text += "3";
}
private void button4_Click(object sender, EventArgs e)
{
textBox1.Text += "4";
}
private void button5_Click(object sender, EventArgs e)
{
textBox1.Text += "5";
}
private void button6_Click(object sender, EventArgs e)
{
textBox1.Text += "6";
}
private void button7_Click(object sender, EventArgs e)
{
textBox1.Text += "7";
}
private void button8_Click(object sender, EventArgs e)
{
textBox1.Text += "8";
}
private void button9_Click(object sender, EventArgs e)
{
textBox1.Text += "9";
}
private void button10_Click(object sender, EventArgs e)
{
textBox1.Text += "0";
}
private void button15_Click(object sender, EventArgs e)
{
textBox1.Text = " ";
}
private void button12_Click(object sender, EventArgs e)
{
int f = 1;
Two = Convert.ToDouble(textBox1.Text);
if (character == "+")
Three = One + Two;
else if (character == "-")
Three = One - Two;
else if (character == "×")
Three = One * Two;
else if (character == "/")
{
if (Two == 0)
{
textBox1.Text = "输入错误";
comboBox1.Text = "错误\r\n\r\n";
return;
}
else
Three = One / Two;
}
else
Three = One / Two;
if (f == 1)
textBox1.Text = String.Format("{0} {1} {2} = {3}", One, character, Two, Three) + "\r\n\r\n\n";
comboBox1.Text += String.Format("{0} {1} {2} = {3}", One, character, Two, Three) + "\r\n\r\n\n";
}
public FrmMain()
{
InitializeComponent();
}
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
}
private void button20_Click(object sender, EventArgs e)
{
double r = double.Parse(textBox1.Text);
if (r < 0||r==0)
{
MessageBox.Show("被开方数不能小于等于0");
textBox1.Text = "";
return;
}
else
{
textBox1.Text = Convert.ToString(Math.Sqrt(r));
comboBox1.Text += Convert.ToString(Math.Sqrt(r));
}
}
private void FrmMain_Load(object sender, EventArgs e)
{
}
private void FrmMain_FormClosing(object sender,FormClosingEventArgs e)
{
Application.Exit();
}
}
}
二.软件测试
(一)登录(账号为liu,密码为123)
1.账号或密码错误,显示用户名或密码错误
a.密码错误

b.账号错误

c.账号和密码都错误

2.账号和密码正确,显示登录成功(登录成功后跳转至计算器窗口)

(二)计算
- 加法、减法

2.乘法

3.除法
a.除数为0时

b.除数不为0时

4.开根号
a.开根号的数大于0时


b.开根号的数小于等于0时

5.历史记录

三.流程图
