设计一个多功能计算器<用C语言程序设计>

实现功能:
1)具备整型数据、浮点型数据的算术(加、减、乘、除)运算功能。
依次输入第一个运算数、运算符(+,-,*,/),第二个运算数,然后输出结果。
结果可以作为下一个运算的第一运算数。按‘C’清屏,按‘X’退出。
例如:输入:2
+
5
输出:7
2)实现单运算符表达式计算的功能。
输入的操作数可以包含整数或浮点数。如果遇到错误的表达式,应输出错误提示信息。
输入表达式如下:
例如:输入:2+5
输出:7

一. 写出:题目意义和设计思想
二、采用的主要技术、遇到的难点和解决方法
三、实现的主要功能和系统结构
四、核心算法描述和相关技术说明
五、总结和体会

一.题目意义和设计思想
1、题目意义 多功能计算器的设计目的是为了简化计算及对所学C语言知识的有效应用。在多功能计算器设计的这个实际的例子中,我们运用C语言知识来解决这个生活中的实际问题。从而能更有效地检验自己的C语言学习的水平,加强对知识的掌握,提高解决实际问题的能力。 2、设计思想 首先是对要解决的问题进行分析,
二、采用的主要技术、遇到的难点和解决方法
在设计的过程中主要运用到do-while 循环语句,if-else判断语句,switch选择语句,函数的递归调用,库函数windows.h的清屏函数system(“cls”),和程序的终止函数exit(0)等技术。遇到的问题主要有两个: 1) 清屏的功能的实现 2) 输出结果后将结果作为操作数继续计算的功能的实现解决方法:1) 是通过查询资料和复习书上的知识 明白了应该调用库函数windows.h的清屏函数system(“cls”)就可以解决这个问题2) 通过循环do-while嵌套do-while和if-else语句的使用来解决,循环的利用前次计算的结果来作为下一个计算的第一个操作数来实现的。
三、实现的主要功能和系统结构
各函数的 实现的功能Main()主函数 主函数
Calculate() 进行直接的计算
Expression() 表达式计算得形式
System(“cls”) 系统清屏的功能
Exit() 系统使得程序退出的功能
函数之间的关系\实现功能:1)具备整型数据、浮点型数据的算术(加、减、乘、除)运算功能。依次输入第一个运算数、运算符(+,-,*,/),第二个运算数,然后输出结果。结果可以作为下一个运算的第一运算数。按‘C’清屏,按‘X’退出。例如: 选择c清屏的功能后如图 按任意键继续 最后按X退出功能2)实现单运算符表达式计算的功能。输入的操作数可以包含整数或浮点数。如果遇到错误的表达式,应输出错误提示信息。输入表达式如下:
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-07-22
/*一. 写出:题目意义和设计思想
二、采用的主要技术、遇到的难点和解决方法
三、实现的主要功能和系统结构
四、核心算法描述和相关技术说明
五、总结和体会
这个自己写吧,我文笔不好*/
#include<stdio.h>
void main()
{ float a,b,y;
char ch;
printf("请输入算式:");
scanf("%f%c%f",&a,&ch,&b);
switch(ch){
case '+': y=a+b;break;
case '-': y=a-b;break;
case '*': y=a*b;break;
case '/': y=a/b;break;
}
printf("%.2f%c%.2f=%.4f\n",a,ch,b,y);
}
第2个回答  2013-07-22
看LZ说的像是写上机总结报告
这个程序在接收的时候要用字符串接收,处理时要从中分离数据【负数要注意提取'-'】,计算的时候要考虑优先级【括号。。。】,除法的时候要非0,过程有点复杂
第3个回答  2013-07-22
PC初学者论坛里好像有这个,具体的我没查,我以前好像在那上面看到过,也不太记得了,但我们以前用VB做过这个,百度一下有很多的