1、 面向对象与面向对象与 C+C+ 课程设计课程设计论文论文 题目题目:计算器计算器 院院 系:系: 计计算机信息与技术算机信息与技术 学科专业:学科专业: 计算机科学与技术计算机科学与技术 2013 年 1 月 4 日 2 摘要 本课程设计将实现一个简单计算器。这个计算器不仅能实现简单的加减乘除运算还实现了科学计算功 能。它的设计 并且具有可行性。降低了数字计算难度和节约了时间对大家的计算有了一定帮助。在课程设计中开发工具 统一使用了 VC+6.0 同时使用了面向对象的思想如类、对象、多态、重载、等遵守 C+程序标识符的般约 定并加了适量的注释。在程序设计中采用了结构化与面向对象两种解决问题方
2、法。 3 目 录 第一章第一章 总体设计总体设计 4 1.1 功能需求分析. 4 1.2 功能结构 4 1.3 程序流程 5 第二章第二章 详细设计详细设计 . 6 2.1 Main 函数. 6 2.2 类 zhujiemian 6 2.3 类 jiben 9 2.4 类 sanjiao 12 2.5 类 jinzhi15 2.6 类 anweiyunsuan .18 第三章第三章 功能测试及运行效果功能测试及运行效果. 21 3.1 主界面 21 3.2 基本数据运算界面 .21 3.3 三角函数运算界面.22 3.4 进制转换运算界面.22 3.5 按位运算界面22 4 第一章 总体设计
3、本计算器是基于 C+语言面向对象程序设计的思路和方法 制转换的功能。 1.1 功能需求分析 1等。 2 3转换。 4 进行逻辑运算包括与,或,非,异或,按位与,按位或运算等。 通过上述功能的设计与实现实现了计算器的基本功能。当然在实际的计算器中其功能要比本课题的多 1.2 1.2 功能结构图功能结构图 主函数 主界面类 基本运算 类 三角运算 类 进制转换 类 按位运算 类 加、减、 乘、除、 取余函数 模块 正弦、余 弦、正 切、余切 函数模块 十进制转 二、八、 十六进制 函数模块 与、或、 非、异 或、左 移、右移 函数模块 图 1-2-1 结构功能图 5 1.3 程序流程见图 主函数
4、主界面类 基本运算三角运算进制转换按位运算 输入的数字 1,2,3,4 开始 输入的数字 输入的数字 输入的数字输入的数字 加 取 余 正 弦 余 切 十 转 二 十 转 八 与 取 反 结束 1 142 215 1 23 4 非1,2,3,4 非1,2 非1,2 非1,2 非1,2 1 减乘除 余 弦 正 切 转 十 六 或 非 3423 2 图 1-3-1 程序流程 6 第二章 详细设计 2.1. Main 函数 (1)主要源代码 #include #include“zhujiemian.h“ void main() zhujiemian f; f.show(); coutx; couta
5、; while(a!=N couta; if(a=N|a=n) i=0; break; break; case 6: :system(“cls“); zhujiemian a; a.show(); break; couta; while(a!=N 11 couta; if(a=N|a=n) zhujiemian a;a.show(); jiben:jiben() void jiben:ad(double x,double y) couty; couty; couta; si(a); coutc; while(c!=N coutc; if(c=N|c=n) i=0; break; break;
6、case 4: :system(“cls“); 14 zhujiemian a; a.show(); break; coutc; while(c!=N coutc; if(c=N|c=n) zhujiemian a;a.show(); sanjiao:sanjiao() void sanjiao:si(double a) double b=a; while(b=360) b=b-360; while(bx; bianer(x); couta; 17 while(a!=N couta; if(a=N|a=n) i=0; break; break; case 4: system(“cls“); zhujiemian a; a.show(); break; couta; while(a