找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1640|回复: 3
收起左侧

这个C语言程序如何更改为if-else if格式

[复制链接]
ID:943830 发表于 2021-6-24 19:56 | 显示全部楼层 |阅读模式
#include<reg51.h>
sbit   S1=P0^0;
void   delay(unsigned int i)
{    unsigned  int k;
     for(k=0;k<i;k++);
}
void   main()
{
     unsigned char i=0;
         P1=0xff;
         while(1)
         {  
           if(S1==0)
           {  delay(1200);
              if(S1==0)
                  {  if(++i==5)i=1;    }


     }
         switch(i)
         {
             case  1:P1=0x00;break;
                 case  2:P1=0x55;break;
                 case  3:P1=0x0f;break;
                 case  4:P1=0xff;break;
                 default:break;
         }
         while(!S1);


         delay(1200);
         }
}


回复

使用道具 举报

ID:943654 发表于 2021-6-24 21:48 | 显示全部楼层
直接把switch改成if(i=1)P1=0x00;else if(i=2)P1=0x55;....
回复

使用道具 举报

ID:824490 发表于 2021-6-25 00:21 | 显示全部楼层
为什么要改?switch不比IF更好用吗?
回复

使用道具 举报

ID:920992 发表于 2021-6-25 08:01 | 显示全部楼层
if(i==1)
{
  P1=0x00;
}
else if(i==2)
{
P1 = 0X55;
}
else if(i==3)
{
P1=0X0F;
}
else if(i==4)
{
p1=0xff;
}
但是建议3个else if以上就使用switch
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表