
比如
switch(a)
{
case 1:
clear ();
delay();
display();
}
大概就这样的格式,至于写什么函数就看你自己了
你设计的程序有问题:1:每次执行while(1)时,v都会被重新定义一次,这样很不好,应该将变量定义放到while(1)外面。
2:case里面的 while(v==0x**) v=keyscan()有问题,例如第一个case里面的while(v==0x41) v=keyscan(),你的意思是按一次键就加1,防止被加多次,但是你这个while语句退出的条件是下一个按键必须与当前按键不同,这与现实情况相符吗?主队不能连续得分吗?这个你自己考虑一下,也许你设置的比赛规则是这样的。
3:还是 while(v==0x**) v=keyscan()这句,你的意思就是case语句退出的条件是检测到下一个按键必须与当前按键不同,但是你的while(1)循环第一句也是扫面键盘,这样就有可能出错。
建议你如下修改:
1:v的定义放到while(1)外面。
2:删除每一个case语句中的while(v==0x**) v=keyscan(),在执行完case语句后,将v的值赋成0x00,或者一个不可能的键盘值即可,然后直接退出case语句。
case 0x41:
{
hpoint++ //主队加分
point_lcd(0x00,hpoint)
v = 0x00把v的值置成一个初值或者一个不可能的键盘值。
} //分数显示更新
break
case 0x81:
{
hpoint--
point_lcd(0x00,hpoint)
v = 0x00把v的值置成一个初值或者一个不可能的键盘值。
}
break
case 0x12:
{
rpoint++ //客队加分
point_lcd(0x03,rpoint) //分数显示更新
v = 0x00把v的值置成一个初值或者一个不可能的键盘值。
}
break
case 0x22:
{
rpoint--
point_lcd(0x03,rpoint)
v = 0x00把v的值置成一个初值或者一个不可能的键盘值。
}
break
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)