收藏 分销(赏)

C语言计算器文档.doc

上传人:xrp****65 文档编号:7429341 上传时间:2025-01-04 格式:DOC 页数:18 大小:283.50KB 下载积分:10 金币
下载 相关 举报
C语言计算器文档.doc_第1页
第1页 / 共18页
C语言计算器文档.doc_第2页
第2页 / 共18页


点击查看更多>>
资源描述
C语言课程设计 工 程 实 践 院系名称 网络工程学院 班 级 学生姓名 学 号 课 题 计 算 器 目 录 摘 要 1 一、问题要求及任务描述 2 二、系统分析 3 1、功能需求 3 2、数据需求 3 3、性能需求 3 4、系统模块框架图 3 三、详细设计与实现 4 1、界面设计 4 2、流程图 4 四、程序测试 5 1、程序运行界面 5 欢迎界面 5 输入错误时界面 5 计算不包含三角函数时界面 6 输入算式后界面 6 计算包含三角函数时界面 7 输入算式后界面 7 选择continue后界面 8 不继续计算时界面 8 总结 9 源代码 10 摘 要 计算器是人们生活必不可少的简单工具。在我们的学习生活中经常会用到计算器来进行简单的运算。因此,如何编写一个简单的计算器程序,也是我们应该掌握的。 本程序使用C语言作为开发语言,开发计算器,实现简单的加、减、乘、除、取余数、求三角函数等运算。 本文分析了程序的设计需求、设计意义、题目要求等,分别从需求分析、总体设计、详细设计等各个方面详细介绍了程序的设计与实现过程。 关键字:计算器,加减乘除,取余数 一、问题要求及任务描述 题目要求 完成一个简单的计算器,要求实现最基本的运算操作,当用户输入一个算式后,计算器显示计算结果,同时屏幕项部显示:continue? 如果用户此时按Y键,则继续输入下一个算式,否则,程序终止。 实现要求: 由主函数获取用户输入的算式并进行分解,确定操作数和操作符 完成基本运算(+-×÷%)函数 完成复杂运算(sin,cos,tag)函数 二、系统分析 1、功能需求 本系统是一个简单的计算器程序系统 本系统需要实现加、减、乘、除、取余数、三角函数等功能,并尽量使计算结果精确。 2、数据需求 本系统需要手动输入需要计算的算式,由系统自动分解出运算数据,运算操作符。 3、性能需求 在运行本程序时只要按照正确的操作方法不会出现无法运行的情况,系统稳定好,安全可靠。 4、系统模块框架图 欢迎界面 进行运算 退 出 正切 余弦 正弦 求余 除法 乘法 减法 加 法 三、详细设计与实现 1、界面设计 运行本程序,会弹出一个窗口,用户在窗口中按照要求输入进行操作 开 始 2、流程图 Continue? 输出操作数据与计算数据 输出操作数据与计算数据 输入需计算算式 输入三角函数 输入错误,重新输入 输入需计算算式 Choise1 输入含三角函数吗? choose Y 退 出 输入错误,重新输入 结 束 四、程序测试 1、程序运行界面 欢迎界面 图1 输入错误时界面 图2 计算不包含三角函数时界面 图3 输入算式后界面 图4 计算包含三角函数时界面 图5 输入算式后界面 图6 选择continue后界面 图7 不继续计算时界面 图8 总结 经过一段时间的编译,终于完成计算器代码,虽然有的地方不尽人意,但是已达到了题目要求。为了完成程序,首先进行分析了自己的设计思路,制定了设计流程,从而明白了自己的设计方向。 通过这次程序设计,在实际的编程中发现自己学习过程中的问题,通过思考实践慢慢解决一个个问题,这增强了自己的能力,积累了编程的实践经验,加深了自己对C语言的理解。 源代码 #include<stdio.h> #include<math.h> #include<stdlib.h> #include<string.h> #define pi 3.1415926 #define M 1e-6 void function1(float x,char y,float z); void function2(float x,char name[3]); void choose(); main() { char choise1,choise2; float num1,num2; char symbol; char name[3]; int t; choose(); x: printf("·请输入你要进行的操作:\n"); scanf("%d",&t); getchar(); switch(t) { case 1: do { loop: printf("·计算包含三角函数吗?(y/n)\n"); scanf("%c",&choise1); getchar(); switch(choise1) { case 'n': case 'N': printf("·请输入需要计算的算式:\n"); scanf("%f%c%f",&num1,&symbol,&num2); getchar(); printf("·输入的第一个数为:%f\n",num1); printf("·要进行的运算为:%c\n",symbol); printf("·输入的第二个数为:%f\n",num2); function1(num1,symbol,num2); break; case 'y': case 'Y': printf("·请输入需要计算的三角函数名与度数(中间以空格隔开):\n"); scanf("%s%f",name,&num1); getchar(); printf("·输入的角度为:%f\n",num1); printf("·输入的三角函数为:%s\n",name); function2(num1,name); break; default: printf("·输入错误,请重新输入!\n"); printf("\n"); goto loop; } printf("continue?(y/n)\n"); scanf("%c",&choise2); getchar(); printf("\n"); }while(choise2=='y'||choise2=='Y'); printf("谢谢使用!\n"); system("pause"); break; case 2: system("pause"); break; default: printf("输入错误,请重新输入!\n"); printf("\n"); goto x; } } void function1(float x,char y,float z) { float m; int n; switch(y) { case'+': m=x+z; printf("结果为:%f+%f=%f\n",x,z,m); printf("\n\n"); break; case'-': m=x-z; printf("%结果为:%f-%f=%f\n",x,z,m); printf("\n\n"); break; case'*': m=x*z; printf("结果为:%f*%f=%f\n",x,z,m); printf("\n\n"); break; case'/': if(fabs(z)<M||fabs(z)==M) { printf("除法中分母不能为0!\n"); printf("\n\n"); } else { m=x/z; printf("结果为:%f/%f=%f\n",x,z,m); printf("\n\n"); } break; case'%': if(z==0) { printf("不能对0进行求余操作!\n"); printf("\n\n"); break; } else { n=(int)x%(int)z; printf("结果为:%d\n",n); printf("\n\n"); break; } default: printf("未知运算符!"); printf("\n\n"); } } void function2(float x,char name[3]) { float m,n,i,j; m=(x*pi)/180; printf("此度数的所有三角函数结果为:\n"); n=sin(m); printf("sin %.2f=%.2f\n",x,n); i=cos(m); printf("cos %.2f=%.2f\n",x,i); if(i!=0) { j=n/i; printf("tan %.2f=%.2f\n",x,j); printf("\n\n"); } else { printf("tan的值不存在\n"); printf("\n\n"); } } void choose() { printf("\t\t\t********** 欢迎使用计算器 ***********\n"); printf("\t\t\t*************************************\n"); printf("\t\t\t* 1.进行运算 *\n"); printf("\t\t\t* 2.退 出 *\n"); printf("\t\t\t*************************************\n"); printf("\t\t\t*************************************\n");} 第 16 页 共16页
展开阅读全文

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


开通VIP      成为共赢上传

当前位置:首页 > 应用文书 > 其他

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

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

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

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

gongan.png浙公网安备33021202000488号   

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

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

客服