描述
键盘输入一个字符串,格式:运算方式 整数1 整数2,编写程序解析出字符串中的 3 部分内容,然后做相应的运算,并输出结果。
例如:
输入“add 10 20”,则做加法运算(10+20);
输入“sub 10 20”,则做减法运算(10-20);
输入“mul 10 20”,则做乘法运算(10*20);
输入“div 10 20”,则做除法运算(10/20),如果除数为 0,则不做运算,输出“Error”;
注意:运算方式忽略大小写,即 “add” 同 “Add”、“ADD”等。
输入描述:
键盘输入一个字符串,格式:运算方式 整数1 整数2
整数范围为[-100, 100]
输出描述:
输出运算后的结果(除法不考虑小数),如果除数为 0,则不做运算,输出“Error”
AC代码:
#include <iostream>
#include <string.h>
#include <sstream>using namespace std;int StoI(string x){stringstream ss(x);int t;ss>>t;return t;
}int main() {char str[100] = { 0 };cin.getline(str, sizeof(str));string op="";string sa,sb;int len=strlen(str);int k=0;while(str[k]!=' ' && k<len)op+=str[k++];k++;while(str[k]!=' ' && k<len)sa+=str[k++];k++;while(str[k]!=' ' && k<len)sb+=str[k++];int a=StoI(sa);int b=StoI(sb);//将op全部小写for(int i=0;i<op.length();i++){if(op[i]>='a' && op[i]<='z')continue;op[i]+='A'-'a';}int res;if(op=="div" && b==0){cout<<"Error"<<endl; }else{if(op=="add")res=a+b;else if(op=="sub")res=a-b;else if(op=="mul")res=a*b;elseres=a/b;cout<<res<<endl;}return 0;
}