我做的一个计算器,哪些地方可简化点?
#include<stdio.h>#include<math.h>
#include<string.h>//
void main()
{
double a;
double b;
double s;
double x;
char sign;
char str[20],str1[10]="sqrt";//12345
char str2[5]="tan",str4[30]="log",str7[60]="sin",str8[14]="tan";
char str11[5]="log",str12[5]="sinh",str13[5]="tanh";
if(scanf("%lf",&a)&&scanf("%c",&sign)&&scanf("%lf",&b))//
{
if(sign=='+')
{
s=a+b;
}
else if(sign=='-')
{
s=a-b;
}
else if(sign=='*')
{
s=a*b;
}
else if(sign=='/')
{
s=a/b;
}
printf("%f\n",s);
}
else
{
scanf("%s",str),scanf("%lf",&x);
if(!(strcmp(str,str1)))
{ //
s=sqrt(x);
printf("%f",s);
}
else if(!(strcmp(str,str2)))
{ s=tan(x);
printf("%f",s);
}
else if(!(strcmp(str,str7)))
{
s=sin(x);
printf("%f",s);
}
else if(!(strcmp(str,str12)))
{
s=sinh(x);
printf("%f",s);
}
}
}