238 找出所有等价(equivalent)的表达式
来源:互联网 发布:联通宽带用广电网络 编辑:程序博客网 时间:2024/06/03 21:41
38.今晚 10.11大华笔试题:建立一个data structure表示没有括号的表达式,而且找出所有等价(equivalent)的表达式 比如:
3*5 == 5*3
2+3 == 3+2
字符串处理 分三段
3*5 == 5*3
2+3 == 3+2
字符串处理 分三段
#include<iostream>#include<stdio.h>using namespace std;int main(){char str1[10],str2[10],s[3],oper1,oper2;int numA,numB,i,len;double ans1,ans2;while(scanf("%s",str1)){i=0;//左边 len=strlen(str1);numA=0;numB=0;while(str1[i]<='9'&&str1[i]>='0'){numA=numA*10+str1[i]-'0';i++;} oper1=str1[i++];while(str1[i]<='9'&&str1[i]>='0'&&i<len){numB=numB*10+str1[i]-'0';i++;}switch (oper1){case '+': ans1=numA+numB;break;case '-': ans1=numA-numB;break;case '*': ans1=numA*numB;break;case '/': ans1=numA/numB;break;//没有判断除数为0的情况 }scanf("%s",s);//获取==//右边 scanf("%s",str2); i=0;len=strlen(str2);numA=0;numB=0;while(str2[i]<='9'&&str2[i]>='0'){numA=numA*10+str2[i]-'0';i++;} oper2=str2[i++];while(str2[i]<='9'&&str2[i]>='0'&&i<len){numB=numB*10+str2[i]-'0';i++;}switch (oper2){case '+': ans2=numA+numB;break;case '-': ans2=numA-numB;break;case '*': ans2=numA*numB;break;case '/': ans2=numA/numB;break;//没有判断除数为0的情况 }if(ans1==ans2)printf("YES,%s == %s\n",str1,str2);elseprintf("NO,%s != %s\n",str1,str2);}}
0 0
- 238 找出所有等价(equivalent)的表达式
- 等价变换(equivalent transformation)
- CF560D Equivalent Strings 可拆分的字符串是否等价
- noip的等价表达式
- 利用正则表达式找出文件里的所有邮件地址
- 正则表达式的等价判断
- 正则表达式的等价判定
- 【codevs1107】等价表达式(栈)
- Codeforces 559B Equivalent Strings 等价串
- [百练1686]等价表达式(栈的应用)
- 等价表达式的后缀表达式读取
- 等价表达式
- 等价表达式
- 等价表达式
- 等价表达式
- 等价表达式
- 等价表达式 (codevs 1107)题解
- NOIP 2005 等价表达式(hash算法)
- Java GC基本算法
- OSX Docker 开放端口
- iOS两种创建单例的方式
- android sqilte3数据库大小的测试
- urllib2的使用
- 238 找出所有等价(equivalent)的表达式
- C# get set简述
- make menuconfig的详细配置
- 【知识导图】第七章 查找技术
- 大话cmm
- JVM 中可生成的最大 Thread数量
- 清除solrcloud 中solr admin 留下的collection 无用collection
- NSOperation
- android paint api drawText 绘制字体字形