• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

求助C语言if循环问题

c8077b1e9874418f 2020-08-11 浏览量:478
void main()
{
jdq=0;
LK1=k1;
delayms(4);
K1=k1;
if((LK1==1)&&(K1==0)&&(F1==0)) 
{
F1=1;                                                   
jdq=1;                            
delayms(10);
}//检测k1是否转动,转动F1=1          
}
如上程序,这个if程序第一次可以进,程序里面有F1=1了,但是后面还是会一直进入这个程序,是不是if里面的条件我这边编写错误?
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 从if判断上看,没问题。如果你这是个main函数,加上while,在一个主循环里判断;如果是其他函数,改个名字,同时找下F1是否在其他地方被清零了。
    • 发布于 2020-08-11
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:4
  • 这个函数名字  不要用 main。

    这个函数调用时一直进if语句,那就是条件满足啊,那你看下条件中的变量是不是在其它地方修改了。

    • 发布于2020-08-11
    • 举报
    • 评论 0
    • 0
    • 0

  • 因为你的程序没有while主循环,当执行要if之后就相当于又跳转到程序开始的地方也就是复位,你再主函数里面加一个while循环,然后都用全局变量就好了
    • 发布于2020-08-11
    • 举报
    • 评论 0
    • 0
    • 0

  • 你这个程序有个问题,就是main函数里面没有用一个while(1)让它循环执行,这样main函数就会重复进
    • 发布于2020-08-12
    • 举报
    • 评论 0
    • 0
    • 0

  • 程序没有while(1)的死循环,当程序执行完了之后会一直反复执行,相当于单片机重启了,所以条件会一直满足
    • 发布于2020-08-12
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

求助C语言if循环问题