C语言程序设计(在线等)

来源:百度知道 编辑:UC知道 时间:2024/05/27 17:57:42
设计一个一个多功能计算器

实现功能:

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);