收藏 分销(赏)

C面向对象程序设计课程设计报告.doc

上传人:w****g 文档编号:2934622 上传时间:2024-06-11 格式:DOC 页数:14 大小:35KB 下载积分:8 金币
下载 相关 举报
C面向对象程序设计课程设计报告.doc_第1页
第1页 / 共14页
C面向对象程序设计课程设计报告.doc_第2页
第2页 / 共14页


点击查看更多>>
资源描述
《C++面向对象程序设计》课程设计报告 题 目: 分数计算器设置 班 级: K0312415 专 业: 计算机科学与技术 学 号: K031241521 K031241535 姓 名: 周林 指导教师: 小组成员: 周林,张齐满 二O一三 年 10 月 15 日 一、课程设计问题描述 分数计算器设计是高等学校教务管理的重要组成部分,其内容较多,为了简化计论,要求设计的管理系统能够完成以下功能: (1)定义整数类和分数类。其中,包括构造函数、析构函数、显示函数等。 (2)输入/输出:对流提取和流插入运算符进行重载。 (3)计算功能:可进行分数的加、减、乘和除法运算。 (4)化简功能:将分数化简为最简分数。 (5)异常处理功能:分数中分母不能为零。 (6)菜单功能:每种功能的操作都是在菜单中进行相应选择。 二、课程设计目的和要求: 经过一个学期的《C++面向对象程序设计》课程的学习,已经有了一定地程序设计基础,但是要学好C++面向对象程序设计这门课程,不仅要认真阅读课本知识和从事课堂学习,更重要的是要进行上机实践,通过上机实践才能增强和巩固知识。 三、系统设计(算法分析) 1、 系统由5功能,可分别执分数的.加法运算, 减法运算 ,.乘法运算 和除法运算,还可以将分数化简。 1.加法运算可计算两个分数相加。 2.减法运算可计算两个分数相减。 3.乘法运算可计算两个分数相乘。 4.除法运算可计算两个分数相除。 5.化简运算可计算一个分数化简。 2、流程图 主菜单 加法运算 减法运算 成法运算 除法运算 结束 分母是否为0 是 否 技术输出结果 3、分数计算器设置各函数的功能和实现的相关功能由对应的函数来实现。 (1) 函数jia()实现分数加法运算。 (2)函数jian()实现分数减法运算。 (3)函数cheng()实现分数乘法运算。 (4)函数chu()实现分数除法运算。 (5)函数shuchu()实现分数的输出和化简。 四、程序源代码 // 分数管理系统.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include "fenshu.h " #include "zhengshu.h" int main(int argc, char* argv[]) { fenshu aa; return 0; } // zhengshu.h: interface for the zhengshu class. // ////////////////////////////////////////////////////////////////////// #if !defined(AFX_ZHENGSHU_H__254BB13E_9F27_4785_BDEE_637C9445F651__INCLUDED_) #define AFX_ZHENGSHU_H__254BB13E_9F27_4785_BDEE_637C9445F651__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 class zhengshu { public: zhengshu(); virtual ~zhengshu(); }; #endif // !defined(AFX_ZHENGSHU_H__254BB13E_9F27_4785_BDEE_637C9445F651__INCLUDED_) // zhengshu.cpp: implementation of the zhengshu class. // ////////////////////////////////////////////////////////////////////// #include "stdafx.h" #include "zhengshu.h" ////////////////////////////////////////////////////////////////////// // Construction/Destruction ////////////////////////////////////////////////////////////////////// zhengshu::zhengshu() { } zhengshu::~zhengshu() { } // fenshu.h: interface for the fenshu class. // ////////////////////////////////////////////////////////////////////// #if !defined(AFX_FENSHU_H__6E3E6A1A_943D_4CB4_87D1_758261F44F66__INCLUDED_) #define AFX_FENSHU_H__6E3E6A1A_943D_4CB4_87D1_758261F44F66__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 #include "zhengshu.h" class fenshu : public zhengshu { public: fenshu(); int disply(); int jia(); int jian(); int cheng(); int chu(); int a,s,d,f; int k,l; //0 int q,w; int shuchu(int q,int w); virtual ~fenshu(); }; #endif // !defined(AFX_FENSHU_H__6E3E6A1A_943D_4CB4_87D1_758261F44F66__INCLUDED_) // fenshu.cpp: implementation of the fenshu class. // ////////////////////////////////////////////////////////////////////// #include "stdafx.h" #include "fenshu.h" #include "iostream" using namespace std; ////////////////////////////////////////////////////////////////////// // Construction/Destruction ////////////////////////////////////////////////////////////////////// fenshu::fenshu() { disply(); } fenshu::~fenshu() { } int fenshu::disply() { while(!0) { int i; system("pause"); system("cls"); cout<<"_______________ 分数计算器__________\n"<<endl; cout<<" 1.加法运算 2.减法运算"<<endl; cout<<" 3.乘法运算 4.除法运算"<<endl; cout<<" 5.化简 6.结束\n"<<endl; cout<<"______________________________________"<<endl; cin>>i; if(i==5) { cout<<"请输入两个数,分子在前"<<endl; cin>>a>>s; shuchu(a,s); } else { cout<<"请输入四个数,分子在前"<<endl; if(i>0 && i<7) cin>>a>>s>>d>>f; if(s==0||f==0) cout<<"输入错误"<<endl; else switch(i) { case 1:jia();break; case 2:jian();break; case 3:cheng();break; case 4:chu();break; case 6:return 0; } } } return 0; } fenshu::jia() { k=a+d; l=s+f; shuchu(k,l); return 0; } fenshu::jian() { k=a+d; l=s+f; shuchu(k,l); return 0; } fenshu::cheng() { k=a*d; l=s*f; shuchu(k,l); return 0; } fenshu::chu() { if(f=0) { cout<<"输入错误"<<endl; return 0;} k=a*d; l=s*d; shuchu(k,l); return 0; return 0; } fenshu::shuchu(int q,int w) { int p; if(q>w) p=w; else p=q; for(int i=p;i>1;i--) { if(q%i==0 && w%i==0) { q=q/i; w=w/i; } } cout<<"结果为"<<q<<"/"<<w<<endl; return 0; } 五、总结和体会 虽然写了很多次,总算是功夫不负有心人。但是在写的时候遇到了很多问题,本来,这个小组只有我一个人。张齐满加入,他找了资料,找到很多有用的我写程序,共同完成了这一个实验。通过这一次的实践,我明白了合作的力量。同学之间应该多多交流思想。 六、参考文献 1 、C++面向对象设计第二版 2 3
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服