求c程序编多功能计算器

来源:百度知道 编辑:UC知道 时间:2024/05/16 23:44:49
要求:1.具备整型,浮点型数据的算术(+ - * /);依次输入第一个运算数运算符,第二个运算数,输出结果.按"c"清屏,按"x"退出.
2.实现单运算符表达式功能;输入的操作数可包含整或浮点数,如遇到错误表达式,输出错误的提示信息.

#include<stdio.h>
#include<conio.h>
#include<math.h>
#include<stdlib.h>

#define UNKNOWN_CHAR 2
#define DIVISOR_IS_ZERO 3
#define FALSE 0
#define TRUE 1

/*定义结构,主要用于GetString函数,可以不管它*/
typedef struct string
{char str;
struct string *next;
}string;

/*函数声明*/

/*可以无限接受字符,输入一个字符就给你个空间,返回一个字符串首地址 . */
/*这个函数可以看成普通的scanf()*/
char *GetString();
/*从字符串str第*rank个字符开始分析直到遇到 ')' or ']' or '}' or '\0' . */
/*有错误就把错误代号装在*errorNum中,返回从中计算出的值*/
double GetASResultOf(char * str, int *rank, int *errorNum);
/*从字符串str第*rank个字符开始分析直到遇到不符合要求的字符,返回这个单位值.*/
/*如:str="12+sin(30)+[12+cos(60)]"
GetUnitageOf(str,0,errorNum)=12
GetUnitageOf(str,3,errorNum)=0.5
GetUnitageOf(str,11,errorNum)=12.5 */
double GetUnitageOf(char * str, int *rank, int *errorNum);
/*Are