python3.5仿微软计算器程序


Posted in Python onMarch 30, 2020

本文实例为大家分享了python3.5仿微软计算器的具体代码,供大家参考,具体内容如下

from tkinter import *
from math import *
root = Tk()
root.title("计算器")
root.geometry("1200x260+0+0")
 
 
def come(event):
 event.widget["background"]= "orange"#event的widget方法,恩,恩,值得看看
def go(event):
 event.widget["background"] = "#%02x%02x%02x" % (240,240,240)#实现RGB和十六进制的换算
def num1():
 text.insert(END,1)
def num2():
 text.insert(END,2)
def num3():
 text.insert(END,3)
def num4():
 text.insert(END,4)
def num5():
 text.insert(END,5)
def num6():
 text.insert(END,6)
def num7():
 text.insert(END,7)
def num8():
 text.insert(END,8)
def num9():
 text.insert(END,9)
def num0():
 if text.get(END) =="/":
  messagebox.showinfo(title ="除数不能为零")
 else:
  text.insert(END,0)
def dot_it():
 text.insert(END,".")
  
def Addnum():
 if text.get(1.0,END):
  text.insert(END,"+")
def minus_num():
 if text.get(1.0,END):
  text.insert(END,"-")
def times_num():
 if text.get(1.0,END):
  text.insert(END,"*")
def div_num():
 if text.get(1.0,END):
  text.insert(END,"/")
  
def equal_it():#可以使用text的search方法排除除法和开根号的例外
 global list_power,x,list_log,xylog
 se = text.get(1.0,END)
 if se:
  if "/" in text.get(1.0,END):
   div_pos = text.search("/",1.0,END)
   pos = div_pos.split(".")
   text_row = pos[0]
   text_column = pos[1]
   newpos = "%d.%d" % (int(text_row),int(text_column)+1)
   cool = eval(text.get(newpos,END))
   if cool == 0:
    text_alert.insert(1.0,"被除数不能为零")
    return
   else:
    se = eval(se)
    text.delete(1.0,END)
    text.insert(1.0,se)
  elif xypower==True:#通过设全局变量为哨兵,看函数是否被调用
   list_power.append(eval(se))
   text.delete(1.0,END)
   text.insert(1.0,pow(list_power[0],list_power[1]))
   list_power = []
  elif xylog ==True:
   list_log.append(eval(se))
   text.delete(1.0,END)
   text.insert(1.0,log(list_log[1],list_log[0]))
   list_log = []
    
    
  else:
   se = eval(se)
   text.delete(1.0,END)
   text.insert(1.0,se)
 else:
  text.delete(1.0,END)
def negative():
 text.insert(END,"-")
def Square_root():
 if eval(text.get(1.0,END))>=0:
  rootit =sqrt(eval(text.get(1.0,END)))
  text.delete(1.0,END)
  text.insert(1.0,rootit)
def Per():
 if text.get(1.0,END):
  num = eval(text.get(1.0,END))
  text.insert(END,"%")
  newnum = num*0.01
  text.delete(1.0,END)
  text.insert(1.0,newnum)
 
def Reci_num():
 #text.get(1.0,"%s-2c" % END).strip("\n")
 #if text.get(1.0,"%s-1c" % END).isdigit():
  # if type(aa)==type(bb) 可以用来判断数据类型
  # if type(aa)==type(1)
  #if type(aa)==type("我")
  #if type(aa)==type(3.14)
 if eval(text.get(1.0,END))!=0:
  num = eval(text.get(1.0,END).strip("\n"))
  num = 1/num
  text.delete(1.0,END)
  text.insert(1.0,num)
 else:
   text_alert.insert(1.0,"零不能求倒数")
  
def C():
 global memorylist,list_power,list_log# global的用法
 text.delete(1.0,END)
 text_alert.delete(1.0,END)
 memorylist = []
 list_power = []
 list_log =[]
  
def CE():
 text.delete(1.0,END)
 text_alert.delete(1.0,END)
def delete_onechar():
 text.delete("%s-1c" % INSERT,INSERT)#字符index的移动
def Mc():
 global memorylist
 memorylist = []
def Ms():
 global memorylist
 memorylist.append(eval(text.get(1.0,END)))
 text.delete(1.0,END)
def M_plus():
 global memorylist
 global m_plus
 m_plus = True
 memorylist.append(eval(text.get(1.0,END)))
 text.delete(1.0,END)
 return True
def M_minus():
 global memorylist
 global m_minus
 m_minus =True
 memorylist.append(eval(text.get(1.0,END)))
 text.delete(1.0,END)
 return True
def Mr():
 global memorylist
 global m_plus
 global m_minus
 text.delete(1.0,END)
 if m_plus == True:
  sum1 =0
  for i in range(len(memorylist)):
   sum1 = sum1 + memorylist[i]
  memorylist =[]
  memorylist.append(sum1)
  text.insert(1.0,sum1)
 elif m_minus == True:
  difference = 0
  for i in range(len(memorylist)):
   difference = memorylist[i]-difference
  difference = - difference
  memorylist.append(difference)
  text.insert(1.0,difference)
def angle_radio():
 text.delete(1.0,END)
 global angle_is
 angle_is =True
   
def radium_radio():
 text.delete(1.0,END)
 global radium_is
 radium_is =True
def angle_choice():
 global x
 if angle_is == True:
  x = pi*eval(text.get(1.0,END))/180
 if radium_is == True:
  x = eval(text.get(1.0,END))
def circle_ratio():
 text.insert(END,pi)
def sin_x():
 global x
 angle_choice()
 text.delete(1.0,END)
 text.insert(1.0,sin(x))
  
def cos_x():
 global x
 angle_choice()
 text.delete(1.0,END)
 text.insert(1.0,cos(x))
  
def tan_x():
 angle_choice()
 if x == 90 or x == pi/2:
  text_alert.insert(1.0,"正切角度不能为90度或π/2弧度")
  return
 else:
  text.delete(1.0,END)
  text.insert(1.0,tan(x))
  
def square_it():
 temp = eval(text.get(1.0,END))
 text.delete(1.0,END)
 text.insert(1.0,pow(temp,2))
def x_ypower():
 global list_power,x,xypower
 xypower =True
 x = eval(text.get(1.0,END))
 list_power.append(x)
 text.delete(1.0,END)
def tri_power():
 temp = eval(text.get(1.0,END))
 text.delete(1.0,END)
 text.insert(1.0,pow(temp,3))
def Bracket_left():
 text.insert(END,"(")
def Bracket_right():
 text.insert(END,")")
def nature_log():
 temp = eval(text.get(1.0,END))
 text.delete(1.0,END)
 text.insert(1.0,log1p(temp))
def deci_log():
 temp = eval(text.get(1.0,END))
 text.delete(1.0,END)
 text.insert(1.0,log10(temp))
def bina_log():
 temp = eval(text.get(1.0,END))
 text.delete(1.0,END)
 text.insert(1.0,log2(temp))
def y_based_on_x_log():
 global list_log,x,xylog
 xylog =True
 x = eval(text.get(1.0,END))
 list_log.append(x)
 text.delete(1.0,END)
def natur_const():
 text.insert(END,e)
def anti_sin():
 temp = eval(text.get(1.0,END))
 text.delete(1.0,END)
 text.insert(1.0,asin(temp)*180/pi)
def anti_cos():
 temp = eval(text.get(1.0,END))
 text.delete(1.0,END)
 text.insert(1.0,acos(temp)*180/pi)
def anti_tan():
 temp = eval(text.get(1.0,END))
 text.delete(1.0,END)
 text.insert(1.0,atan(temp)*180/pi)
def sqrt_num():
 temp = eval(text.get(1.0,END))
 text.delete(1.0,END)
 text.insert(1.0,sqrt(temp))
def tri_root():
 temp = eval(text.get(1.0,END))
 text.delete(1.0,END)
 text.insert(1.0,pow(temp,1/3))
  
def standard():
 MC = Button(root,text ="MC",width =10,command = Mc)
 MC.bind("<Enter>",come)
 MC.bind("<Leave>",go)
 MC.grid(row=2,column =0,sticky =W,padx =1)
 MR = Button(root,text ="MR",width =10,command = Mr)
 MR.grid(row=2,column =1,stick = W,padx =1)
 MR.bind("<Enter>",come)
 MR.bind("<Leave>",go)
 MS = Button(root,text ="MS",width =10,command =Ms)
 MS.grid(row=2,column =2,sticky =W,padx =1)
 MS.bind("<Enter>",come)
 MS.bind("<Leave>",go)
 M_ADD = Button(root,text ="M+",width =10,command =M_plus)
 M_ADD.grid(row=2,column =3,sticky =W,padx =1)
 M_ADD.bind("<Enter>",come)
 M_ADD.bind("<Leave>",go)
 M_ADD.bind("<>")
 M_Minus = Button(root,text ="M-",width =10,command =M_minus)
 M_Minus.grid(row=2,column =4,sticky =W,padx =1)
 M_Minus.bind("<Enter>",come)
 M_Minus.bind("<Leave>",go)
 
 DEL = Button(root,text ="→",width =10,command =delete_onechar)
 DEL.grid(row=3,column =0,sticky =W,padx =1)
 DEL.bind("<Enter>",come)
 DEL.bind("<Leave>",go)
 CEbtn = Button(root,text ="CE",width =10,command =CE)
 CEbtn.grid(row=3,column =1,sticky =W,padx =1)
 CEbtn.bind("<Enter>",come)
 CEbtn.bind("<Leave>",go)
 Cbtn = Button(root,text ="C",width =10,command =C)
 Cbtn.grid(row=3,column =2,sticky =W,padx =1)
 Cbtn.bind("<Enter>",come)
 Cbtn.bind("<Leave>",go)
 negativ = Button(root,text ="负号 - ",width =10,command = negative)
 negativ.grid(row=3,column =3,sticky =W,padx =1)
 negativ.bind("<Enter>",come)
 negativ.bind("<Leave>",go)
 sqr_root = Button(root,text ="平方根√",width =10,command =Square_root )
 sqr_root.grid(row =3,column =4,sticky =W,padx =1)
 sqr_root.bind("<Enter>",come)
 sqr_root.bind("<Leave>",go)
 
 
 btn7 = Button(root,text =7,width =10,command = num7)
 btn7.grid(row=4,column =0,sticky =W,padx =1)
 btn7.bind("<Enter>",come)
 btn7.bind("<Leave>",go)
 btn8 = Button(root,text =8,width =10,command = num8)
 btn8.grid(row=4,column =1,sticky =W,padx =1)
 btn8.bind("<Enter>",come)
 btn8.bind("<Leave>",go)
 btn9 = Button(root,text =9,width =10,command = num9)
 btn9.grid(row=4,column =2,sticky =W,padx =1)
 btn9.bind("<Enter>",come)
 btn9.bind("<Leave>",go)
 div = Button(root,text ="除法 /",width =10,command = div_num)
 div.grid(row=4,column =3,sticky =W,padx =1)
 div.bind("<Enter>",come)
 div.bind("<Leave>",go)
 per = Button(root,text ="百分之 %",width =10,command =Per)
 per.grid(row=4,column =4,sticky =W,padx =1)
 per.bind("<Enter>",come)
 per.bind("<Leave>",go)
 
 btn4 = Button(root,text =4,width =10,command = num4)
 btn4.grid(row=5,column =0,sticky =W,padx =1)
 btn4.bind("<Enter>",come)
 btn4.bind("<Leave>",go)
 btn5 = Button(root,text =5,width =10,command = num5)
 btn5.grid(row=5,column =1,sticky =W,padx =1)
 btn5.bind("<Enter>",come)
 btn5.bind("<Leave>",go)
 btn6 = Button(root,text =6,width =10,command = num6)
 btn6.grid(row=5,column =2,sticky =W,padx =1)
 btn6.bind("<Enter>",come)
 btn6.bind("<Leave>",go)
 times = Button(root,text ="乘法 ×",width =10,command = times_num)
 times.grid(row=5,column =3,sticky =W,padx =1)
 times.bind("<Enter>",come)
 times.bind("<Leave>",go)
 reciprocal = Button(root,text ="倒数 1/x",width =10,command =Reci_num)
 reciprocal.grid(row=5,column =4,sticky =W,padx =1)
 reciprocal.bind("<Enter>",come)
 reciprocal.bind("<Leave>",go)
 
 
 btn1 = Button(root,text =1,width =10,command = num1)
 btn1.grid(row=6,column =0,sticky =W,padx =1)
 btn1.bind("<Enter>",come)
 btn1.bind("<Leave>",go)
 btn2 = Button(root,text =2,width =10,command = num2)
 btn2.grid(row=6,column =1,sticky =W,padx =1)
 btn2.bind("<Enter>",come)
 btn2.bind("<Leave>",go)
 btn3 = Button(root,text =3,width =10,command = num3)
 btn3.grid(row=6,column =2,sticky =W,padx =1)
 btn3.bind("<Enter>",come)
 btn3.bind("<Leave>",go)
 minus = Button(root,text ="减 - ",width =10,command =minus_num )
 minus.grid(row=6,column =3,sticky =W,padx =1)
 minus.bind("<Enter>",come)
 minus.bind("<Leave>",go)
 equal = Button(root,text ="=",width =10,height =3,command = equal_it)
 equal.grid(row=6,column =4,sticky =W,padx =1,rowspan =2)
 equal.bind("<Enter>",come)
 equal.bind("<Leave>",go)
 
 btn0 = Button(root,text =0,width =22,height =1,command = num0)
 btn0.grid(row=7,column =0,sticky =W,padx =1,columnspan =2)
 btn0.bind("<Enter>",come)
 btn0.bind("<Leave>",go)
 dot = Button(root,text =".",width =7,font =("Times","14"),height =1,command =dot_it)
 dot.grid(row=7,column =2,sticky =W,padx =1)
 dot.bind("<Enter>",come)
 dot.bind("<Leave>",go)
 add = Button(root,text ="加 +",width =10,command = Addnum)
 add.grid(row=7,column =3,sticky =W,padx =1)
 add.bind("<Enter>",come)
 add.bind("<Leave>",go)
 
def sci():
 v =IntVar()
 angle = Radiobutton(root,text = "角度",variable =v,value =1,command =angle_radio)
 angle.grid(row=0,column=6)
 radium = Radiobutton(root,text = "弧度",variable =v,value =2,command =radium_radio )
 radium.grid(row=0,column=7)
 
 sinaa = Button(root,text = "Sin(x)",width =18,command = sin_x)
 sinaa.grid(row = 1,column =6)
 sinaa.bind("<Enter>",come)
 sinaa.bind("<Leave>",go)
 cosaa = Button(root,text = "COS(x)",width =18,command = cos_x)
 cosaa.grid(row =1,column =7)
 cosaa.bind("<Enter>",come)
 cosaa.bind("<Leave>",go)
 tanaa = Button(root,text = "tan(x)",width =18,command =tan_x)
 tanaa.grid(row = 1,column =8)
 tanaa.bind("<Enter>",come)
 tanaa.bind("<Leave>",go)
 x_square = Button(root,text = "x的平方",width =18,command = square_it)
 x_square.grid(row =2,column =6)
 x_square.bind("<Enter>",come)
 x_square.bind("<Leave>",go)
 X_Ytimes = Button(root,text = "x的Y次方",width =18,command =x_ypower)
 X_Ytimes.grid(row = 2,column =7)
 X_Ytimes.bind("<Enter>",come)
 X_Ytimes.bind("<Leave>",go)
 X_tri= Button(root,text = "x的三次方",width =18,command = tri_power)
 X_tri.grid(row = 2,column =8)
 X_tri.bind("<Enter>",come)
 X_tri.bind("<Leave>",go)
 
 leftbra = Button(root,text = "左括号 ( ",width =18,command = Bracket_left)
 leftbra.grid(row = 3,column =6)
 leftbra.bind("<Enter>",come)
 leftbra.bind("<Leave>",go)
 rightbra = Button(root,text = "右括号 )",width =18,command = Bracket_right)
 rightbra.grid(row =3,column =7)
 rightbra.bind("<Enter>",come)
 rightbra.bind("<Leave>",go)
 natural_logs = Button(root,text = "自然对数 In(x)",width =18,command =nature_log)
 natural_logs.grid(row = 7,column =6)
 natural_logs.bind("<Enter>",come)
 natural_logs.bind("<Leave>",go)
 square_root = Button(root,text = "x的平方根",width =18,command = sqrt_num)
 square_root.grid(row =4,column =6)
 square_root.bind("<Enter>",come)
 square_root.bind("<Leave>",go)
 X_Yroot = Button(root,text = "x的Y次方根",width =18,command = x_ypower)
 X_Yroot.grid(row = 4,column =7)
 X_Yroot.bind("<Enter>",come)
 X_Yroot.bind("<Leave>",go)
 X_tri_root = Button(root,text = "x的三次方根",width =18,command = tri_root)
 X_tri_root.grid(row = 4,column =8)
 X_tri_root.bind("<Enter>",come)
 X_tri_root.bind("<Leave>",go)
 
 log10aa = Button(root,text = "以10为底的对数Logx",width =18,command =deci_log)
 log10aa.grid(row = 5,column =6)
 log10aa.bind("<Enter>",come)
 log10aa.bind("<Leave>",go)
 log2aa = Button(root,text = "以2为底的对数Logx",width =18,command =bina_log)
 log2aa.grid(row = 5,column =8)
 log2aa.bind("<Enter>",come)
 log2aa.bind("<Leave>",go)
 pow10 = Button(root,text = "以x为底,y为真数的logx",width =18,command =y_based_on_x_log)
 pow10.grid(row =5,column =7)
 pow10.bind("<Enter>",come)
 pow10.bind("<Leave>",go)
 radio = Button(root,text = "圆周率 π",width =18,command =circle_ratio)
 radio.grid(row = 7,column =7)
 radio.bind("<Enter>",come)
 radio.bind("<Leave>",go)
 natur_con = Button(root,text = "自然常数e",width =18,command =natur_const)
 natur_con.grid(row = 7,column =8)
 natur_con.bind("<Enter>",come)
 natur_con.bind("<Leave>",go)
 
 antisin = Button(root,text = "反三角正弦sin(-1)x",width =18,height =1,command =anti_sin)
 antisin.grid(row = 6,column =6)
 antisin.bind("<Enter>",come)
 antisin.bind("<Leave>",go)
 anticos = Button(root,text = "反三角余弦cos(-1)x",width =18,height =1,command =anti_cos)
 anticos.grid(row =6,column =7)
 anticos.bind("<Enter>",come)
 anticos.bind("<Leave>",go)
 antitan = Button(root,text = "反三角正切tan(-1)x",width =18,height =1,command = anti_tan)
 antitan.grid(row = 6,column =8)
 antitan.bind("<Enter>",come)
 antitan.bind("<Leave>",go)
 
###################
if __name__ == "__main__":
 ################################菜单设计
 standard_it =True
 sci_it = False
 static_it = False
 code_it = False
 memorylist = []
 m_plus = False
 m_minus = False
 angle_is = False
 radium_is = False
 x =0
 list_power = []
 list_log =[]
 xypower = False
 xylog = False
 text = Text(root,height =1,font = ("Times","20"),width =31,fg = "#%02x%02x%02x" % (46,150,67),bd =0)
 text.grid(row = 0,column =0,columnspan =6)
 text_alert = Text(root,height=1,width =31,fg = "red",font = ("Times","20"),bd = 0)
 text_alert.grid(row =1,column =0,columnspan =6)
 
 menubar = Menu(root)
 mode_menu = Menu(menubar,tearoff= 0)
 v_mode = IntVar()
 mode_menu.add_radiobutton(label = "标准型",variable = v_mode,value =0,command =standard)
 mode_menu.add_radiobutton(label = "科学型",variable = v_mode,value =1,command = sci)
 mode_menu.add_radiobutton(label = "程序员型",variable =v_mode,value =2)
 mode_menu.add_radiobutton(label = "统计型",variable = v_mode,value =3)
 
 mode_menu.insert_separator(7)
 v_his_math = IntVar()
 mode_menu.add_radiobutton(label = "历史记录",variable = v_his_math,value =0)
 mode_menu.add_radiobutton(label = "数字分组",variable = v_his_math,value =1)
 menubar.add_cascade(label = "查看",menu = mode_menu)
 
 mode_menu.insert_separator(11)
 v_transform = IntVar()
 mode_menu.add_radiobutton(label = "单位转换",variable =v_transform,value =1)
 
 edit = Menu(menubar)
 edit.add_command(label = "复制")
 edit.add_command(label = "黏贴")
 menubar.add_cascade(label = "编辑",menu = edit)
 
 helpm = Menu(menubar)
 helpm.add_command(label = "使用说明")
 helpm.add_command(label = "版本为1.0")
 menubar.add_cascade(label = "帮助",menu = helpm)
 root.config(menu = menubar)#有这句菜单栏才能正常工作
#########################################窗体设计
  
 standard()
  
 sci()
 root.mainloop()

更多计算器功能实现,请点击专题: 计算器功能汇总 进行学习

关于Android计算器功能的实现,查看专题:Android计算器 进行学习。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
详解Python中用于计算指数的exp()方法
May 14 Python
Python的Scrapy爬虫框架简单学习笔记
Jan 20 Python
python实现创建新列表和新字典,并使元素及键值对全部变成小写
Jan 15 Python
python命名空间(namespace)简单介绍
Aug 10 Python
python os.path.isfile 的使用误区详解
Nov 29 Python
Python decorator拦截器代码实例解析
Apr 04 Python
Python如何获取文件指定行的内容
May 27 Python
记录模型训练时loss值的变化情况
Jun 16 Python
python闭包与引用以及需要注意的陷阱
Sep 18 Python
Python中for后接else的语法使用
May 18 Python
python 办公自动化——基于pyqt5和openpyxl统计符合要求的名单
May 25 Python
使用Python的开发框架Brownie部署以太坊智能合约
May 28 Python
Python的Asyncore异步Socket模块及实现端口转发的例子
Jun 14 #Python
Python实现TCP/IP协议下的端口转发及重定向示例
Jun 14 #Python
Python实现TCP协议下的端口映射功能的脚本程序示例
Jun 14 #Python
浅谈python新手中常见的疑惑及解答
Jun 14 #Python
Python中死锁的形成示例及死锁情况的防止
Jun 14 #Python
实例探究Python以并发方式编写高性能端口扫描器的方法
Jun 14 #Python
Python使用dis模块把Python反编译为字节码的用法详解
Jun 14 #Python
You might like
Protoss兵种介绍
2020/03/14 星际争霸
多php服务器实现多session并发运行
2006/10/09 PHP
php解析xml方法实例详解
2015/05/12 PHP
php对微信支付回调处理的方法
2018/08/23 PHP
PHP封装类似thinkphp连贯操作数据库Db类与简单应用示例
2019/05/08 PHP
使用JavaScript库还是自己写代码?
2010/01/28 Javascript
JavaScript去掉空格的方法集合
2010/12/28 Javascript
基于jquery实现控制经纬度显示地图与卫星
2013/05/20 Javascript
jQuery实现可展开合拢的手风琴面板菜单
2015/09/15 Javascript
AngularJS 日期格式化详解
2015/12/23 Javascript
使用postMesssage()实现iframe跨域页面间的信息传递
2016/03/29 Javascript
BootStrap智能表单实战系列(四)表单布局介绍
2016/06/13 Javascript
Bootstrap源码解读标签、徽章、缩略图和警示框(8)
2016/12/26 Javascript
Javascript基础回顾之(二) js作用域
2017/01/31 Javascript
jQuery模拟实现天猫购物车动画效果实例代码
2017/05/25 jQuery
Express使用html模板的详细代码
2017/09/18 Javascript
BootstrapTable加载按钮功能实例代码详解
2017/09/22 Javascript
JS非行间样式获取函数的实例代码
2018/06/05 Javascript
vue项目环境变量配置的实现方法
2018/10/12 Javascript
vue实现商品列表的添加删除实例讲解
2020/05/14 Javascript
vue开发简单上传图片功能
2020/06/30 Javascript
[47:04]EG vs RNG 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
使用Django搭建web服务器的例子(最最正确的方式)
2019/08/29 Python
通过实例解析python创建进程常用方法
2020/06/19 Python
浅析关于Keras的安装(pycharm)和初步理解
2020/10/23 Python
浅析Python打包时包含静态文件处理方法
2021/01/15 Python
谷歌浏览器小字体处理方案即12px以下字体
2013/12/17 HTML / CSS
vivo智能手机官方商城:vivo
2016/09/22 全球购物
KLOOK客路:发现更好玩的世界,预订独一无二的旅行体验
2016/12/16 全球购物
软件测试企业面试试卷
2016/07/13 面试题
三年级小学生评语
2014/04/22 职场文书
比赛口号大全
2014/06/10 职场文书
欢迎标语大全
2014/06/21 职场文书
六查六看心得体会
2014/10/14 职场文书
校运会加油稿大全
2015/07/22 职场文书
运动会报道稿大全
2015/07/23 职场文书