C/C++完成简单二元计算式功能
1、首先建立一个程碌食撞搁序的整体框架:#include<stdio.h>#include<string.h>#in艘早祓胂clude<stdlib.h>int compute(const char*,int*);//函数声明int main(){ char buf[30];//输入的存储空间 printf("Please input:\n>"); gets(buf); int result;//计算结果 int state=compute(buf,&result);//调用函数 if(state==0) printf("The result is %d.\n",result);//输出结果 else if(state==-1) printf("The format your input is wrong!\n"); system("pause"); return 0;}其中包括计算函数的声明,该compute函数主要完成输入字符串的转换以及计算。buf[30]用来存储输入字符串,result用于存放计算结果。

3、下面的while循环主要用于从字符串中提取出两个操作数和操作符,同时忽略空格,如果输入的字符串中有错误的字符程序将会返回。思路是:1.如果是连续的数字,程序将会转化为数字并存放在num中,同时将computeSignStart置为1,表示已经记录到数字。

5、如果是除空格外的其它字符程序返回并报错。

7、运行结果演示如下。
