请编写一个程序计算表达式:data1 op data2的值.其中,op为运算符+、-、*、/.完成计算器的常用功能,完成计算器的常用功能,要求:1)\x09从键盘获取操作数和运算符;2)\x09显示最终计算结果

来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/15 13:30:51
请编写一个程序计算表达式:data1opdata2的值.其中,op为运算符+、-、*、/.完成计算器的常用功能,完成计算器的常用功能,要求:1)\x09从键盘获取操作数和运算符;2)\x09显示最终计

请编写一个程序计算表达式:data1 op data2的值.其中,op为运算符+、-、*、/.完成计算器的常用功能,完成计算器的常用功能,要求:1)\x09从键盘获取操作数和运算符;2)\x09显示最终计算结果
请编写一个程序计算表达式:data1 op data2的值.其中,op为运算符+、-、*、/.完成计算器的常用功能,
完成计算器的常用功能,要求:
1)\x09从键盘获取操作数和运算符;
2)\x09显示最终计算结果;
3)\x09完成常用的数学运算和基本的函数运算;
4)\x09尝试实现进制的转换;

请编写一个程序计算表达式:data1 op data2的值.其中,op为运算符+、-、*、/.完成计算器的常用功能,完成计算器的常用功能,要求:1)\x09从键盘获取操作数和运算符;2)\x09显示最终计算结果
int main(){
char a[80],*p,op;
int n=0;
int data1,data2;
float output;
scanf("%s",a);
p=&a[0];
while(*p !='\0' && *p <='9' && *p>='0'){
p++;
n++;
}
data1=0;
for (int i=0;i<n;i++){
p--;
data1+=(*p-'0')*pow(10,i);
}
p=p+n;
op=*(p++);
n=0;
while(*p !='\0' && *p <='9' && *p>='0'){
p++;
n++;
}
data2=0;
for (i=0;i<n;i++){
p--;
data2+=(*p-'0')*pow(10,i);
}
switch(op){
case '+':output=data1+data2;break;
case '-':output=data1-data2;break;
case '*':output=data1*data2;break;
case '/':output=(float)data1/data2;break;
default:
printf("wrong operator\n");
return 0;
}
printf("%5.2f",output);
}