您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > C语言课程设计--计算器
大学C语言程序设计课程设计(论文)题目:计算器院(系):专业班级:学号:学生姓名:指导教师:教师职称:助教起止时间:2009.12.14至2009.12.26课程设计(报告)任务及评语院(系):教研室:学号学生姓名专业班级程序设计(报告)题目计算器程序设计(报告)任务程序设计的任务与要求:(1)掌握C语言编程的基础知识。(2)较熟练地编写C语言应用程序。(3)了解C语言的常用标准函数、编程技巧、异常处理。(4)联系已学过的内容,巩固所学的理论,增强独立工作能力。(5)通过设计主要使学生有一个独立编写程序的过程,对理论学习及动手能力都有一个很大的提高。(6)通过本次设计,进一步培养学生热爱专业的思想,同时对本专业综合素质的提高起一个积极的推动作用。课程设计过程中,要严格遵守实践环节的时间安排,听从指导教师的指导。正确地完成上述内容,记录实习日记,规范完整地撰写出课程设计报告。指导教师评语及成绩成绩:指导教师签字:2009年12月31日辽宁工业大学课程设计说明书(论文)目录第1章课程设计的目的与要求................................................11.1课程设计目的........................................................11.2课程设计的实验环境..................................................11.3课程设计的预备知识..................................................11.4课程设计要求........................................................1第2章课程设计内容........................................................22.1程序功能介绍........................................................22.2程序整体设计说明....................................................22.2.1设计思路......................................................22.2.2数据结构设计及用法说明........................................22.2.3程序结构(流程图)............................................22.2.4各模块的功能及程序说明........................................32.2.5程序结果.....................................................42.3程序源代码及注释....................................................5第3章课程设计总结........................................................13参考资料..................................................................15辽宁工业大学课程设计说明书(论文)1第1章课程设计的目的与要求1.1课程设计目的本课程设计是计算机科学与技术专业重要的实践性环节之一,是在学生学习完《程序设计语言(C)》课程后进行的一次全面的综合练习。本课程设计的目的和任务:1.巩固和加深学生对C语言课程的基本知识的理解和掌握2.掌握C语言编程和程序调试的基本技能3.利用C语言进行基本的软件设计4.掌握书写程序设计说明文档的能力5.提高运用C语言解决实际问题的能力1.2课程设计的实验环境硬件要求能运行Windows2000/XP操作系统的微机系统。C语言程序设计及相应的开发环境。1.3课程设计的预备知识熟悉C语言及C语言开发工具。1.4课程设计要求1.分析课程设计题目的要求2.写出详细设计说明3.编写程序代码,调试程序使其能正确运行4.设计完成的软件要便于操作和使用5.设计完成后提交课程设计报告辽宁工业大学课程设计说明书(论文)2第2章课程设计内容2.1程序功能介绍利用TurboC所具有的函数模仿画出计算器的界面,实现计算器的基本功能,进行浮点数加、减、乘、除、乘方和求模运算。2.2程序整体设计说明计算器的输入输出和显示结果的显示屏,绘制计算器的按键,绘制边框。利用TurboC绘制程序中的计算器的图形.程序中对使用的图形系统进行初始化定义函数,然后输出函数进行字符的输入输出,来进行简单的+、-。*、/运算。2.2.1设计思路C语言编辑的程序可以直接输入数学表达式,是由于它具有优良的兼容性,有很好的数据处理能力,稳定性也很强。不需要转换就可以直接输出数学运算的结果。输入字符后,输出结果可以显示一个字符串表达式(传入参数,输出值),所以该程序具有较强的计算能力2.2.2数据结构设计及用法说明在主函数里先对接口、屏幕、系统等函数定义(#includemath.h#includeconio.h),屏幕函数包括文本窗口大小设定(voiddrawboder(void))、窗口颜色的设置、窗口文本的清除和输入输出等函数。编制图形程序时,在进入图形方式前,要在程序中对使用的图形系统初始化,进入相应程序的入口地址,利用ottextxy定位输出文本,用voidwindow(intleft,inttop,intright,intbottom)形式调用window()函数,而需要用另一窗口时,可以将定义该窗口的window()函数再次调用一次,就可以定义多个窗口。2.2.3程序结构(流程图)辽宁工业大学课程设计说明书(论文)3图2.1计算器流程图进入函数表达式有错?输入信息调用EAddSub接收输入信息数字或右括号跟的不是运算符?数字或右括号跟着左括号结尾有其它非法字符?输出运算结果Quit?退出函数重新输入Error(CHAR_AFTER_RIGHT)字函数输出错误信息Error(LEFT_AFTER_NUM)子函数输出错误信息Error(INVALID_CHAR_TAIL)子函数输出信息错误辽宁工业大学课程设计说明书(论文)42.2.4各模块的功能及程序说明1、[+]主要功能:加法2、[-]主要功能:减法3、[*]主要功能:乘法4、[/]主要功能:减法5、[/]主要功能:除法备注:两个操作数使用方法:用键盘方向键(上、下、左、右)控制鼠标图形的移动,当移动到想要输入的按钮时按下回车键即可输入当前数字或者执行与之对应的函数1、输入数值时,按下相应的数字键,若输入错误可以用CE键消去本次输入的数值,然后再重新输入正确的数值。2、输入数值后,按+-*/等键进行四则运算。3、按+/-可以更改输入数值的正负值。2.2.5程序结果(1)图2.1程序运行图(2)输入算式25-13=输入步骤:第一步:辽宁工业大学课程设计说明书(论文)5图2.2输入25第二步:图2.3减去13第三步:辽宁工业大学课程设计说明书(论文)6图2.4等于12(3)输入算式33/11=输入步骤:第一步:图2.5输入33第二步:辽宁工业大学课程设计说明书(论文)7图2.6除以11第三步:图2.7等于32.3程序源代码及注释#includedos.h/*DOS接口函数*/#includemath.h/*数学函数的定义*/#includeconio.h/*屏幕操作函数*/辽宁工业大学课程设计说明书(论文)8#includestdio.h/*I/O函数*/#includestdlib.h/*库函数*/#includestdarg.h/*变量长度参数表*/#includegraphics.h/*图形函数*/#includestring.h/*字符串函数*/#includectype.h/*字符操作函数*/#defineUP0x48/*光标上移键*/#defineDOWN0x50/*光标下移键*/#defineLEFT0x4b/*光标左移键*/#defineRIGHT0x4d/*光标右移键*/#defineENTER0x0d/*回车键*/void*rar;/*全局变量,保存光标图象*/structpalettetypepalette;/*使用调色板信息*/intGraphDriver;/*图形设备驱动*/intGraphMode;/*图形模式值*/intErrorCode;/*错误代码*/intMaxColors;/*可用颜色的最大数值*/intMaxX,MaxY;/*屏幕的最大分辨率*/doubleAspectRatio;/*屏幕的像素比*/voiddrawboder(void);/*画边框函数*/voidinitialize(void);/*初始化函数*/voidcomputer(void);/*计算器计算函数*/voidchangetextstyle(intfont,intdirection,intcharsize);/*改变文本样式函数*/voidmwindow(char*header);/*窗口函数*/intspecialkey(void);/*获取特殊键函数*/intarrow();/*设置箭头光标函数*//*主函数*/intmain(){initialize();/*设置系统进入图形模式*/辽宁工业大学课程设计说明书(论文)9computer();/*运行计算器*/closegraph();/*系统关闭图形模式返回文本模式*/return(0);/*结束程序*/}/*设置系统进入图形模式*/voidinitialize(void){intxasp,yasp;/*用于读x和y方向纵横比*/GraphDriver=DETECT;/*自动检测显示器*/initgraph(&GraphDriver,&GraphMode,);/*初始化图形系统*/ErrorCode=graphresult();/*读初始化结果*/if(ErrorCode!=grOk)/*如果初始化时出现错误*/{printf(GraphicsSystemError:%s\n,grapherrormsg(ErrorCode));/*显示错误代码*/exit(1);/*退出*/}getpalette(&palette);/*读面板信息*/MaxColors=getmaxcolor()+1;/*读取颜色的最大值*/MaxX=getmaxx();/*读屏幕尺寸*/MaxY=getmaxy();/*读屏幕尺寸*/getaspectratio(&xasp,&yasp);/*拷贝纵横比到变量中*/AspectRatio=(double)xasp/(double)yasp;/*计算纵横比值*/}/*计算器函数*/voidcomputer(void){structviewporttypevp;/*定义视口类型变量*/intcolor,height,width;辽宁工业大学课程设计说明书(论文)10intx,y,x0,y0,i,j,v,m,n,act,flag=1;floatnum1=0,num2=0,result;/*操作数和计算结果变量*/charcnum[5],str2[20]={},c,temp[20]={};charstr1[]=1230.456+-789*/Qc=^%;/*定义字符串在按钮图形上显示的符号*/mwindow(Calculator);/*显示主窗口*/color=7;/*设置灰颜色值*/getviewsettings(&vp);/*读取当前窗口的大小*/width=(vp.right+1)/10;/*设置按钮宽度*/height=(vp.bo
本文标题:C语言课程设计--计算器
链接地址:https://www.777doc.com/doc-3422198 .html