内容索引:VC/C++源码,字符处理,表达式   VC++表达式解析(计算)工具源代码,由江汉石油学院计算机系的学生所编写。表达式中只能有圆括号、函数名、运算符、常数与变量。一、变量名的命名规则:1、可以是字符、或字符串;2、不能以数字开头;3、不能夹杂有空格、运算符或标点符号,以及以下字符:、|、=、&、%、$、@、#、`、~.二、函数有sin、cos、tan、cot、sqrt、asin、acos、atan、log,均需要小写。函数后的变量名可以加括号,也可以不要括号,如:log(C1)与logC1是相同的。三、运算符有+(加)、-(减)、*(乘)、/(除)与^(幂次)。
2022-09-07 10:55:26 26KB 表达式解析 表达式求值
1
////数字与运算符直接要有空格 //#include //#include //#include //#include //using namespace std; //char s[10000]; //stack p; //long long x,y; //int main(){ // gets_s(s); // int i=0; // while(s[i]!='@'){ // switch(s[i]){ // case '+': // y=p.top();p.pop();x=p.top();p.pop();p.push(x+y);break; // case '-': // y=p.top();p.pop();x=p.top();p.pop();p.push(x-y);break; // case '*': // y=p.top();p.pop();x=p.top();p.pop();p.push(x*y);break; // case '/': // y=p.t
2022-09-02 20:28:32 985B 后缀表达式
1
表达式求值(长整形和小数都可计算)
2022-06-26 17:24:42 4KB 云计算
1
1、先读入一行表达式,用一个字符数组line[]存储 2、依次读入每个字符并进行处理同是进行表达式判错: 1. 遇数字,则继续判断下一个字符,直到下一个字符不是数字且不是小数点,若该数含有两个小以上数点,则表示输入错误。否则即可保证该操作数是完整的浮点数,然后将该数入操作数栈。 若数字不是表达式的最后一位,且数字后面跟的不是“+、-、*、/、^、)”,则为表达式错误 2. 遇运算符,则分两种情况: 1、若运算符为负号(该运算符为符号的情况有两种:一为负号在最开头,一为符号前面是“(” ),则先将0入操作数栈,然后再将负号入运算符栈。 2、该运算符不是负号则与运算符栈的栈顶元素比: (1) 若栈顶元素优先级低, 新输入的运算符入栈。 (2) 若栈顶元素优先级高, 1) 从符号栈弹出一个运算符, 2) 从对象栈弹出一个/两个操作数, 3) 运算结果压入对象栈。 (3) 优先级相等,则栈顶元素出栈,与输入元素对消。 若“(、+、-、*、/、^”放在表达式最后面,则表达式错误 若“+、-、*、/、^”后面跟的不是数字或者变量,表达式错误 3、遇字母变量,则继续判断下一个字符,直到下一个字符不是字母变量,即可保证该变量是完整的,然后输出“请输入变量的值”,再将输入的变量值入操作数栈。 若变量后面跟的不是“+、-、*、/、^、)”,则表达式错误 4、若所读的该字符不是上述情况中的一种,则表达式错误 3、当将所有的字符都读一遍之后,若表达式正确的话,则必然不含有“(”或者“)”。即若运算符栈中含有“(”或者“)”,则表达式必错误。 再考虑表达式正确的情况:运算符栈可能为空,则操作符栈中必剩下一个操作数,即最后的结果。若不为空,则留在运算符栈中的运算符的优先级别从栈顶至栈底依次递减。故可从运算符栈顶开始弹出一个运算符,从操作数栈中弹出两个操作数进行运算,再将运算结果入操作数栈,一直循环至运算符栈为空。此时操作数栈剩下的唯一一个操作数就是运算结果。
2022-06-07 08:51:30 897B c语言
1
利用subs函数对符号表达的变量进行替换求值
2022-06-06 08:51:34 32KB subs函数 符号表达式 求值
1
完整版 数据结构课程设计 图书馆管理系统 航班信息查询系统 表达式求值
1
C C++表达式求值的实验报告,附有详细的注释。
2022-05-05 17:29:22 77KB C C++ 表达式求值
1
数据结构表达式求值.docx
2022-04-06 00:37:41 34KB 计算机
对于基本的算术表达式,以字符序列的形式从终端进行输入,要求语法正确的,不含变量,按照算术运算优先级顺序,实现基本算术表达式的运算过程。 (1) 输入:输入一个算术表达式,以#结束 (2) 输出:输出数据栈栈顶元素和最后表达式的运算结果 (3) 程序功能:完成包含加、减、乘、除运算,包含括号的基本整数表达式的运算,可实现动态的输入,实时的输出。 (4) 测试数据:3*(7-2)和自选数据
1
对用+、-、*、/、(、)连接起来的算术表达式求值, 可以智能识别和过滤表达式。
2022-03-27 15:37:27 2KB 表达式求值四则运算
1