好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

c语言课程设计报告--计算器的实现(内含完整报告-流程图-截屏-总结等)(共15页).doc

15页
  • 卖家[上传人]:des****85
  • 文档编号:219506606
  • 上传时间:2021-12-07
  • 文档格式:DOC
  • 文档大小:67KB
  • / 15 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 精选优质文档-----倾情为你奉上目 录66141415151 前言编写一个程序来实现算术计算器通过结构体数组和共用体数组来存放输入的每一数字或运算符号的记录(包括1、2、3等数字,+、--、*、等运算符号),然后将其信息存入文件中输入一个算术计算式,就在屏幕上显示结果2 需求分析2.1要求(1)用C语言实现程序设计;(2)利用结构体、共用体进行相关信息处理;(3)画出查询模块的流程图;(4)系统的各个功能模块要求用函数的形式实现;(5)界面友好(良好的人机互交),程序要有注释2.2任务(1)定义一个结构体类型数组,输入0~9及+、--、*等符号的信息,将其信息存入文件中;(2)输入简单的加减乘除算术计算式,并在屏幕上显示计算结果;(3)画出部分模块的流程图;(4)编写代码;(5)程序分析与调试2.3运行环境(1)WINDOWS2000/XP系统(2)TurboC2.0编译环境2.4开发工具C语言3 概要设计3.1系统流程图如图3.1所示w开始调用输入函数init_stack()If(!form_win())不能显示窗口,按任意键退出调用字符输入函数write_char()调用边框画线函数draw_border()调用图标按钮设置函数active_button调用结果输出函数out_text_win()调用计算机运算函数put_string()结 束NY图3.1 系统流程图 3.2查询函数流程图(1) 边界画线函数流程图char far *t,far *vi=sx+1i

      用输入函数input()来输入按键放在button[]数组中再定义结构体栈:struct_stack() 用于数据的输入和存放2)进而定义了表格窗口函数,窗口画线函数draw_win() 和边界线函数draw_border(),定义out_text_win()输出文本窗口,定义window_xy(32,3); 计算结果窗口通过这些为形成整个界面提供了大的前提3)接着通过“write_char()”,“active_button()”,“ write_top()”,“out_text_win()”, “get_key()” ,“window_xy()”等一系列的函数,使得计算器的整个外型呈现了出来再定义了文本光标函数:text_clo()文本光标函数,通过光标移动选定数字并按空格键确定,通过mian()函数来调用各个子函数,最终得到结果4.2具体代码实现 源程序代码:#include"dos.h"#include"conio.h"#include"string.h"#include"stdio.h"#define normbut_bor 0x80#define presbut_but 0xb8#define normnum_but 0x8e#define presnum_but 0xb9#define spebut_char 0x2c#define win_color 0xf2#define win_char 0xfbstruct s_button /*按键的结构体*/{ int sx,sy,ex,ey; char *head; int press;}button[17]; /*图表按键数*/struct stack /*结构体栈*/{ char s[20]; int tos,top;}stack;char tag;{ if(stack.tos>0) stack.s[--stack.tos]=\0;}draw_win() /*边框画线窗口*/{ int i; char far *t; char *s="This is a simple calculator!"; /*顶端边框输出的字符*/ draw_border(30,0,79,24,win_color); /*边框的位置和颜色*/ i=(79-30-strlen(s))/2+30; t=vid_mem+i*2; for(;*s;) { *t++=*s++; *t++=win_color; /*顶端字体颜色*/ } }draw_border(int sx,int sy,int ex,int ey,int attrib) /*边界线函数*/{ char far *t,far *v; int i; t=vid_mem; for(i=sx+1;i

      点击阅读更多内容
      相关文档
      高等学校学生手册.doc 2025年区教育系统招聘编外教师储备人才事业单位考试押题.docx 2025年秋季青岛版三年级数学上册认识轴对称现象教学课件.pptx 2025年秋季青岛版三年级数学上册用乘法估算解决问题教学课件.pptx 2025年秋季青岛版三年级数学上册两、三位数乘一位数的笔算(不进位)教学课件.pptx 2025年秋季青岛版三年级数学上册1200张纸有多厚教学设计范文.docx 2025年秋季青岛版三年级数学上册多位数除以一位数教学课件.pptx 2025年秋季青岛版三年级数学上册认识平移、旋转现象教学课件.pptx 2025年秋季青岛版三年级数学上册多位数乘一位数教学设计范本.docx 2025年秋季青岛版三年级数学上册认识平移与旋转教学设计范文.docx 2025年秋季青岛版三年级数学上册乘数中间有0或末尾有0的乘法教学课件.pptx 2025年秋季青岛版三年级数学上册两位数乘一位数的笔算(进位)教学课件.pptx 2025年秋季青岛版三年级数学上册《两、三位数乘一位数的笔算(不进位)》教学设计与意图.docx 2025年秋季青岛版三年级数学上册我学会了吗教学课件.pptx 2025年连云港市妇幼保健院招聘专业技术人员考试笔试试题.docx 2025年深圳市大鹏新区发展和财政局招聘考试笔试试卷.docx 2025年绵阳市梓潼县财政投资评审中心招聘考试试题.docx 2025年来宾市妇幼保健院招聘考试笔试试题.docx 2025年无极县教育系统招聘教师考试笔试试卷.docx 2025年灵山县第三中学调配教师考试笔试试题.docx
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.