C语言程序设计(在线等)
来源:百度知道 编辑:UC知道 时间:2024/05/27 17:57:42
设计一个一个多功能计算器
实现功能:
1) 具备整型数据,浮点型数据的算术(加减乘除)运算功能。
依次输入第一个运算数,运算符(+ — * /),第二个运算数,然后输出结果。结果可以作为下一个运算的第一运算数。按“C”清屏,按“x”退出。
例如:输入:2
+
5
输出:7
2) 实现单运算符表达式计算的功能。
输入的操作数可以包含整数或浮点数。如果遇到错误的表达式,应输出错误提示信息。
输入表达式如下:
例如:输入:2+5
输出:7
实现功能:
1) 具备整型数据,浮点型数据的算术(加减乘除)运算功能。
依次输入第一个运算数,运算符(+ — * /),第二个运算数,然后输出结果。结果可以作为下一个运算的第一运算数。按“C”清屏,按“x”退出。
例如:输入:2
+
5
输出:7
2) 实现单运算符表达式计算的功能。
输入的操作数可以包含整数或浮点数。如果遇到错误的表达式,应输出错误提示信息。
输入表达式如下:
例如:输入:2+5
输出:7
// 在满足你的要求1、2上,还实现了以下的输入方式:
// 10+
// 19
// 输出 10+19=29
// 或者
// 10
// +19
// 输出 10+19=29
#include <stdio.h>
#include <string.h>
void main()
{
char formula[50];
char opt;
char *p;
unsigned int i;
double m, n, r;
////////////////////////////////////
// 输入部分
////////////////////////////////////
printf("请输入单符号运算表达式(符号 + - * /): ");
scanf("%s", formula);
// 如果没有找到操作符,则允许用户继续输入
i = strcspn(formula, "+*-/");
if (i==strlen(formula))
scanf("%s", &formula[i]);
// 如果操作符是最后一个字符,则允许用户继续输入
i = strcspn(formula, "+*-/");
if (i==strlen(formula)-1)
scanf("%s", &formula[i+1]);
////////////////////////////////////
// 检验部分
////////////////////////////////////
// 检验非法字符
for (i=0; i<strlen(formula);