数据库之计算器

一、具体代码

类代码

using System;
using System.Collections.Generic;
using System.Text;
using System.Windows.Forms;

namespace szys
{
    class Class2
    {
        public int Sum;

        public int Answer
        {
            get { return Sum; }

        }
        public int Max(int n1,int n2,char yunsuanfu)
        {
            if (yunsuanfu == ‘+‘)
            {
                return Sum = n1 + n2;
            }
            else if (yunsuanfu == ‘-‘)
            {
                if (n1 > n2)
                {
                    return Sum = n1 - n2;
                }
                else
                {
                    MessageBox.Show("第一个数要大于第二个数!");

                }
            }
            else if (yunsuanfu == ‘/‘)
            {
                if (n2 == 0 || n2 < 0)
                {
                    MessageBox.Show("分母不能为0且大于0!");
                }
                else
                {
                    return Sum = n1 / n2;
                }
            }
            else if (yunsuanfu == ‘*‘)
            {
                return Sum = n1 * n2;

            }
            return Sum;

        }

    }
    }

Form1代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Data.SqlClient;

namespace szys
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        public static int right = 0;
        public static int Count = 0;
        private int t;

        private void button5_Click(object sender, EventArgs e)
        {

            string strCon = @"Data Source=.;Initial Catalog=jisuanqi;Integrated Security=True";
            SqlConnection sqlcon = new SqlConnection(strCon);
            try
            {
                sqlcon.Open();
                string slt = @"insert into jisuan(Number1,Operator,Number2)" + " values(‘" + textBox1.Text + "‘,‘" + textBox4.Text + "‘,‘" + textBox2.Text + "‘)";
                SqlCommand cmd = new SqlCommand(slt, sqlcon);
                cmd.ExecuteNonQuery();
                MessageBox.Show("出题成功!");
            }
            catch (Exception ex)
            {
                MessageBox.Show("出题失败"+ex.ToString());
            }
            sqlcon.Close();

            textBox1.Clear();
            textBox4.Clear();
            textBox2.Clear();

        }

        private void button2_Click(object sender, EventArgs e)
        {

            textBox1.Enabled = false;
            textBox2.Enabled = false;
            textBox4.Enabled = false;
            textBox1.BackColor = Color.Yellow;
            textBox4.BackColor = Color.Yellow;
            textBox2.BackColor = Color.Yellow;
            textBox3.BackColor = Color.Yellow;
            string strCon = @"Data Source=.;Initial Catalog=jisuanqi;Integrated Security=True";
            SqlConnection sqlcon = new SqlConnection(strCon);
            int i = 1;
            sqlcon.Open();
            string slt = @"select * from jisuan";
            SqlCommand cmd = new SqlCommand(slt, sqlcon);
            SqlDataAdapter da = new SqlDataAdapter(cmd);
            DataSet ds = new DataSet();
            da.Fill(ds);
            DataTable dt = ds.Tables[0];
            textBox1.Text = dt.Rows[i][0].ToString();
            textBox4.Text = dt.Rows[i][1].ToString();
            textBox2.Text = dt.Rows[i][2].ToString();
            sqlcon.Close();

        }

        private void textBox3_MouseClick(object sender, MouseEventArgs e)//计时;
        {
            label3.Text = t.ToString();
            timer1.Enabled = true;
            timer1.Interval = 1000;
            timer1.Start();
        }

        private void timer1_Tick(object sender, EventArgs e)
        {
            t = t + 1;
            label3.Text = t.ToString();
        }

        private void button3_Click(object sender, EventArgs e)
        {
            MessageBox.Show("一共用时" + label3.Text + "秒");
            Form2 frm2 = new Form2();
            frm2.ShowDialog();
        }

        private void button4_Click(object sender, EventArgs e)
        {
            int a = int.Parse(textBox1.Text);
            int b = int.Parse(textBox2.Text);
            Char c = Convert.ToChar(textBox4.Text.Trim());
            Class2 con = new Class2();
            con.Max(a, b, c);
            if (con.Answer == int.Parse(textBox3.Text))
            {
                MessageBox.Show("恭喜你,小朋友!回答正确!");
                right++;
                Count++;
            }

            else
            {

                MessageBox.Show("回答错误,继续加油!小朋友");
                Count++;

            }
            textBox1.Clear();
            textBox2.Clear();
            textBox3.Clear();
            textBox4.Clear();

        }

    }
}

Form2代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace szys
{
    public partial class Form2 : Form
    {
        public Form2()
        {
            InitializeComponent();
        }

        private void Form2_Load(object sender, EventArgs e)
        {
            textBox1.Text = Form1.Count.ToString();
            textBox2.Text = Form1.right.ToString();
            textBox4.Text = ((Form1.right / (double)(Form1.Count)) * 100).ToString() + "%";

        }

     }
 }

二、测试

三、总结

         用数据库对已出算式题的保存打开就是对数据库的增加查询,首先建一个表,列名有第一个数,运算符,第二个数,然后编写增加查询语句。

时间: 2024-12-28 01:18:06

数据库之计算器的相关文章

计算器软件的代码实现 (windowform窗体+SQL+策略模式)

一 整体概述 这个计算器软件的功能和以前的功能基本上一样,只不过是数据的保存形式发生了变化,,以前用的是txt文件保存,现在更正用SQL数据库,现在更改了以前的文件保存形式,是三层架构中数据层的更换,但是仍然采用了设计模式中的策略模式,对于在wpf中实现的要求,会在今后中进一步实现的! 二 数据库代码的封装  using System; using System.Collections.Generic; using System.Linq; using System.Text; using Sy

《C#语言和数据库技术基础》单词必备

<C#语言和数据库技术基础> 第一章1..NET Framework   框架2.sharp            尖锐3.application      应用程序4.developer        开发者5.network          网络6.build            建造,建筑7.console          控制台8.debug            调试9.namespace        命名空间10.project         项目11.solution 

在线计算器JS源码

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Typ

dota玩家与英雄契合度的计算器,python语言scrapy爬虫的使用

首发:个人博客,更新&纠错&回复 演示地址在这里,代码在这里. 一个dota玩家与英雄契合度的计算器(查看效果),包括两部分代码: 1.python的scrapy爬虫,总体思路是page->model->result,从网页中提取数据,组成有意义的数据结构,再拿这数据结构做点什么. 在这个项目中,爬虫的用处是从游久网dota数据库上抓取dota英雄和物品的数据和照片存到本地磁盘,数据存为json格式,方便在网页应用中直接使用. 2.网页应用,使用dota英雄数据.自己编写的小伙

MySql数据库2【常用命令行】

(一) 连接MYSQL: 格式: mysql -h主机地址 -u用户名 -p用户密码 1.连接到本机上的MYSQL 进入mysql安装目录下的bin目录下,再键入命令mysql -uroot -p,回车后提示你输密码, 如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了 2.连接到远程主机上的MYSQL (远程:IP地址) 假设远程主机的IP为:10.0.0.1,用户名为root,密码为123.则键入以下命令: mysql -h10.0.0.1 -uroot

【Unity3D】使用MD5值,确保本地Sqlite数据库内容没有被篡改

Sqlite的应用场景 在判断是否使用存储格式为Sqlite模式的标准,我们的标准是内容只读.也就是说,除非发布者修改Sqlite内容,玩家只有读取的权限. 换个角度说,Sqlite里面的数据都是游戏基础配置数据,比如游戏的关卡(不包括玩家取得的成就).怪物的血量.装备的模板数据 对于如何使用Sqlite,请参考我的另外一篇文章<Unity本地数据存储---Sqlite和JSON> 问题重现 OK,既然我们选择了Sqlite作为存储手段之一,那么我们也嘚重视起安全性. 以android而言,我

orcal数据库基本操作

1.连接 SQL*Plus system/manager 2.显示当前连接用户 SQL> show user 3.查看系统拥有哪些用户 SQL> select * from all_users; 4.新建用户并授权 SQL> create user a identified by a;(默认建在SYSTEM表空间下) SQL> grant connect,resource to a; 5.连接到新用户 SQL> conn a/a 6.查询当前用户下全部对象 SQL> s

java版复利计算器升级

github地址:https://github.com/iamcarson/Carson 伙伴:彭宏亮 学号:201406114148 与伙伴工作帅照: 本次升级的地方: 1.改善了界面显示,让界面整体看起来比较的简洁 2.原本使用Stringbuffer来存储结果然后显示的,升级后使用数据库显示 3.实现了一个清空的功能 效果如下: : 本次使用MVC的模式,有数据层,控制层,显示层 总结:复利计算器原理不难,但是想做好却不是那么的简单,好像这一次,还有分页的功能.删除某条记录等功能还没有能力

(笔记)Mysql命令select:当前选择(连接)的数据库

select命令表示当前选择(连接)的数据库. select命令格式:mysql> select database(); MySQL中SELECT命令类似于其他编程语言里的print或者write,你可以用它来显示一个字符串.数字.数学表达式的结果等等.如何使用MySQL中SELECT命令的特殊功能呢? 1) 显示MYSQL的版本mysql> select version(); +-----------------------+ | version()               | +---