找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

初学单片机C语言,为什么这结果?求两数的差值,不想引入负值,就大的减小的,可是

查看数: 1834 | 评论数: 11 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2023-1-3 21:48

正文摘要:

unsigned int        a,b,c;         SCON = 0x50; //串口方式1,允许接收         TMOD = 0x20; //定时器 ...

回复

ID:1006638 发表于 2023-1-4 22:40
感谢各位指点
ID:1034262 发表于 2023-1-4 11:08
少了else,所以后面那句必然执行,就错了。初学者要认真看书,理解指令。
ID:77589 发表于 2023-1-4 09:58
掉了一个else
while(1)
{
        scanf("%d%d",&a,&b);  
        if(a>b)
        {
             c=a-b;
         }
         else
         {
              c=b-a;        
        }
        printf("a=%d,b=%d,c=%d\n",a,b,c);
}
ID:194257 发表于 2023-1-4 09:38
C = b - a;这句前面加一个else就能得到你想要的结果了,不然你的程序每次都会执行C = b - a;
ID:275826 发表于 2023-1-4 09:15
if语句没掌握好,仔细看看
ID:958310 发表于 2023-1-4 09:15
c=b-1;改成else
ID:331842 发表于 2023-1-4 08:02
最后你写的 c=b-a,再输出的。
ID:950218 发表于 2023-1-4 07:43
while(1)
        {
        scanf("%d%d",&a,&b);  
        c=b-a;  
        if(a>b)
                {
                        c=a-b;
                }      
        printf("a=%d,b=%d,c=%d\n",a,b,c);
        }               
}
ID:277550 发表于 2023-1-4 07:30
while(1){
        scanf("%d%d",&a,&b);  
        if(a>b){
                c=a-b;
        }else
                c=b-a;        
        printf("a=%d,b=%d,c=%d\n",a,b,c);
}
ID:94031 发表于 2023-1-4 06:45
if(a>b)
{
        c=a-b;
}
else
{
         c=b-a;
}
printf("a=%d,b=%d,c=%d\n",a,b,c);
ID:883242 发表于 2023-1-4 02:39
你少写了一个else

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

Powered by 单片机教程网

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