计算机乘除法在线教程,练习乘法口诀不用烦 巧用Excel实现自动出题

小外甥刚刚学完乘法口诀,整天拉着我,要我出题考他,开始倒没什么,但不断地重复这些题,还真有点烦呢!有没有办法能实现自动出题、自动判断呢?要编程吗?不,用Excel就行了!

一、自动出题用Excel自动出题,就能实现自动出题、自动更新题目的目的。具体操作方法也非常简单。为了便于管理,先建立一个名称为乘法的文件夹,在这个文件夹里新建一个名称为出题的Excel文件(如图1所示)。A列、C列的函数公式是:“=INT(RAND()*(9-1)+1)”。公式意义是随机返回一个 1至9的整数,每次打开或关闭此文件,都会重新随机产生新的整数。

be4014d8c4ceb8ab5c095549383b6770.png

此文件使用方法也很简单:主要就是打开再关闭文件,关闭时出现“文件‘出题.xls’已被修改,是否保存其修改的内容?”提示框,单击[是]按钮即可。

二、自动判断用Excel自动判断,就可以根据输入的数值,自动判断结果的正误。具体操作方法也非常简单。在乘法文件夹里再新建一个名称为练习的Excel文件(如图2所示)。

9dd8b86de50b96aa0adae451f64b7cd9.png

1. 在文件中,第1行、B列、D列输入文字即可。

2. A2单元格的函数公式是“='F:\乘法\[出题.xls]Sheet1'!$A$1”。其实我们想实现的是练习文件的A2单元格等于出题文件A1单元格的内容,如果直接打公式可能比较麻烦,使用鼠标操作即可。同时打开出题和练习这两文件,先选中练习的A2单元格,按编辑公式栏的“=”,再切换到出题文件,选中A1单元格即可。其中公式里的“'F:\乘法\[出题.xls]Sheet1'!”表示的就是一个相对引用,会根据文件的存放位置自动变化,这里表示刚才建立的乘法文件夹是在F盘的根目录。根据相同的方法做完A列的A2至A11和C列的C2至C11单元格公式。

3. E列由练习人自己根据题目填写答案。

4. F2单元格的公式是“=IF(ISBLANK(E2),"此题还没做!",IF(E2=(A2*C2),"√","×"))”。用ISBLANK判断做题人是否答题(如果E2单元格是空白单元格,就判定为没有答题;否则就判定为已经答题),没有答题就显示“此题还没做!”;已经答题的,就用IF进行判断答案是否正确,如果答案正确就显示“√”,答案错误就显示“×”,F3到F11单元格的公式使用填充柄向下拉即可。

此文件使用方法也很简单:打开文件,会出现“当前所要打开的文档含有到其他文档的链接,是否要使用其他工作簿中的改动更新当前工作簿?”提示框,选择 [是]按钮即可以开始答题。需要变换题目时,打开出题文件,保存后关闭,即可重新开始。为了使练习文件里的E列不留下答题的痕迹,可以将此文件设置为只读或关闭此文件时,不要保存,使得E列保持空白。

做完了这些工作后,就让小外甥用电脑练习乘法口诀,我在旁边喝茶休息就行了,不用再为这事烦恼了。

down_info.asp?id=3734

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
private void Save2Excel() { //string file = "F:\\11\\ck.xlsx"; //string path = "F:\\11\\excel\\"; string time = DateTime.Now.ToString("yyyyMMdd"); string file = System.Windows.Forms.Application.StartupPath + "\\ck.xlsx"; string path = System.Windows.Forms.Application.StartupPath + "\\excel\\"; if (!Directory.Exists(path)) { Directory.CreateDirectory(path); } string saveName1 = path + "_" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".xlsx"; excel = new CCExcel(file,saveName1); excel.Exceldata(); } private void textBox1_TextChanged(object sender, EventArgs e) { Form1.name = textBox1.Text.ToString(); } private void Form1_Load(object sender, EventArgs e) { comboBox1.Text = 11.ToString(); comboBox2.Text = 100.ToString(); } private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) { Form1.comB1 = comboBox1.Text.ToString(); } private void comboBox2_SelectedIndexChanged(object sender, EventArgs e) { Form1.comB2 = comboBox2.Text.ToString(); } } public class CCExcel { public Excel.Application appExcel; public Excel.Workbooks wbs; public Excel.Workbook wb; public Excel.Worksheets wss; public Excel.Worksheet ws; private string fileName; private string saveName; public CCExcel(string fileName,string saveName) { // //TODO: 在此处添加构造函数逻辑 // this.fileName = fileName; this.saveName = saveName; } public void Exceldata() { Create(); //Open(fileName); Data2Excel(); Save(saveName); //Save(wb,saveName); //appExcel.ActiveWorkbook.SaveCopyAs(fileName); //判断当前激活的表,并保存这个表。否则,保存时会弹出“是否保存Sheet1.xlsx”的对话框 wb.Close(Type.Missing, Type.Missing, Type.Missing); wbs.Close(); appExcel.Quit(); wb = null; wbs = null; appExcel = null; GC.Collect(); } private void Create()//创建一个Excel对象 { appExcel = new Excel.Application(); wbs = appExcel.Workbooks; wb = wbs.Add(true); //ws = (Excel.Worksheet)wb.ActiveSheet;//这是一个只读sheets集合 //Excel.Worksheet worksheet = wb.ActiveSheet as Excel.Worksheet;//这也是一个只读sheets集合 //Excel.Worksheet ws = (Worksheet)wb.Worksheets[1];//创建工作页sheet单页 ws = wb.Worksheets[1] as Worksheet; //第一个sheet页 ws.Name = "ck"; //这里修改sheet名称 } public void Open(string fileName) { appExcel = new Excel.Application(); wbs = appExcel.Workbooks; wb = wbs.Add(fileName); wb = wbs.Open(fileName,Type.Missing,Type.Missing,Type.Missing,Type.Missing, Type.Missing,Type.Missing,Type.Missing,Type.Missing,Type.Missing, Type.Missing,Type.Missing,Type.Missing,Type.Missing,Type.Missing); }

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值