int main(void)
{
char ch;
int s1,s2;
printf("Enter characters:");
ch=getchar();
s1=ch-'0';
while((ch=getchar())!=('='))//当s2>10时会出错;
{
s2=getchar()-'0';
switch(ch)
{
case '+':s1=s1+s2;break;
case '-':s1=s1-s2;break;
case '*':s1=s1*s2;break;
case '/':s1=(float)s1/s2;break;
default:;break;
}
}
printf("%d",s1);
return 0;
}
当输入的数>=10是,程序会死机,求解决方法;
仅供参考,望采纳~
#include<stdio.h>
int main(void)
{
char ch;
int s1,s2;
printf("Enter characters:");
scanf("%d",&s1);
while((ch=getchar())!=('='))//当s2>10时会出错;
{
scanf("%d",&s2);
switch(ch)
{
case '+':s1=s1+s2;break;
case '-':s1=s1-s2;break;
case '*':s1=s1*s2;break;
case '/':s1=(float)s1/s2;break;
default:break;
}
}
printf("%d\n",s1);
return 0;
}