voidSub_Card(uchar*p)

{uchari,B_Flag;

uchartemp[14];

i=Read_Card(temp);

if((i==3)&&(!(temp[9]{if(temp[13]elsetemp[13]=temp[13]-p[4];

//以上处理小数点右边的数字;

if(B_Flag==1)

{if(temp[12]==0){temp[12]=9;B_Flag=0;}

elsetemp[12]=temp[12]-1;}

//以上对存在借位情况时对小数点左边第一位进行预处理;

if(temp[12]elsetemp[12]=temp[12]-p[3];

//以上处理小数点小数点左边第一位数字;

if(B_Flag==1)

{if(temp[11]==0){temp[11]=9;B_Flag=0;}

elsetemp[11]=temp[11]-1;}

//以上对存在借位情况时对小数点左边第二位进行预处理;

if(temp[11]elsetemp[11]=temp[11]-p[2];

//以上处理小数点小数点左边第二位数字;

if(B_Flag==1)

{if(temp[10]==0){temp[10]=9;B_Flag=0;}

elsetemp[10]=temp[10]-1;}

//以上对存在借位情况时对小数点左边第三位进行预处理;

if(temp[10]elsetemp[10]=temp[10]-p[1];

//以上处理小数点小数点左边第三位数字;

if(B_Flag==1)

{if(temp[9]==0){temp[9]=0;B_Flag=0;}

elsetemp[9]=temp[9]-1;}

//以上对存在借位情况时对小数点左边第二位进行预处理;

temp[9]=temp[9]-p[0];

//以上处理小数点小数点左边第二位数字;

WriteMainMemory(41,temp[9]);

WriteMainMemory(42,temp[10]);

WriteMainMemory(43,temp[11]);

WriteMainMemory(44,temp[12]);

WriteMainMemory(45,temp[13]);

}

}

//*****************数码管显示函数********************//

voidDisplay(uchar*p)

{ucharsel,i;

sel=0x01;

for(i=0;i《6;i++)

{PORTA=table[p[i]];

PORTB=sel;

DelayMs(2);

sel=sel《《1;}

}

//****************键盘扫描函数***********************//

ucharKey_SCAN(void)

{ucharsccode,recode;

PORTC=0xf0;

if((PINC&0xf0)!=0xf0)

{DelayMs(10);

if((PINC&0xf0)!=0xf0)

{sccode=0xfe;

while(sccode&0x10!=0x00)

{PORTC=sccode;//对第一行键盘测试

if((PINC&0xf0)!=0xf0)

{recode=(PINC&0xf0)|0x0f;

return((~sccode)+(~recode));}

else

sccode=(sccode《《1)|0x01;

}

}

}

return(0x00);

}

//******************按键处理函数*******************//

voidKey_Process(uchar*p)

{uchartemp,value;

temp=Key_Scan();

switch(temp)

{case0x11:value=9;Num_Flag=1;break;

case0x21:value=8;Num_Flag=1;break;

case0x41:value=7;Num_Flag=1;break;

case0x12:value=6;Num_Flag=1;break;