请大神解答,我的这个计算器这段程序怎么改成可以 2个数以上 的相加减,最好乘除也可以
void count()
{
unsigned char key,i=0,a[9];
unsigned long num0;
key=key_inquiry();
if(key<10)
{
num1=num1*10+key;
}
if(key=='+')
{
num2=num1;
num1=0;
Symbol=key;
}
if(key=='-')
{
num2=num1;
num1=0;
Symbol=key;
}
if(key=='*')
{
num2=num1;
num1=0;
Symbol=key;
}
if(key=='/')
{
num2=num1;
num1=0;
Symbol=key;
}
if(key=='=')
{
WriteAddress(0x41);
switch(Symbol)
{
case '+':num0=num1+num2; break;
case '-':
if(num2>num1)
num0=(num2-num1);
if(num2<num1)
{
WriteData('-');
num0=num1-num2;
}
break;
case '*':num0=(num1*num2);break;
case '/':
if(num1>0)
num0=(num2/num1);
else
WriteData('e');
break;
default:num0=0;break;
}
if(num0==0)
{
WriteData('0');
}
while(num0>0)
{ i++;
a=num0%10;
num0=num0/10;
}
for(;i>0;i--)
{
WriteData(num[a]);
}
num1=0;num2=0;Symbol=0;
flag=1;
}
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>