有谁知道为啥if没起作用啊,判断条件是有问题吗,最后if语句不管输出a还是c都能输出,不执行执行if语句啊?

img


求帮忙有谁知道为啥if没起作用啊,判断条件是有问题吗最后if语句不管a是否等于c都能输出a,c。

if后面的分号

  • 你可以参考下这个问题的回答, 看看是否对你有帮助, 链接: https://ask.csdn.net/questions/7505228
  • 这篇博客也不错, 你可以看下嵌入式C语言-关于if条件判断为真但不执行if块语句的问题
  • 除此之外, 这篇博客: C语言程序——多条件if语句的应用中的 一、多条件if语句的应用 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 在if型的选择语句中都是由if语句印出条件。若解决问题的分支较多,有多个条件,可以用else if 形式描述多个条件,引出多个分支来解决问题。以p1到pn表示n个条件,B1到B(n+1)表示n+1个分支,这种格式的具体形式为:

    if (表达式p1)
                (语句组B1)
    else   if    (表达式p2)
    		   	(语句组B2)
    else   if    (表达式p3)
    			(语句组B3)
    else   if    (表达式p4)
    			(语句组B4)
    ......
    else  		(语句组Bn +1)
    
    

    以上就是嵌套if语句,可以理解为:从上向下逐行对if后的表达式进行检测,当某一个表达式的值为非零时,就执行与此有关子句中的语句,阶梯形中的其余部分被穿越过去;如果所有表达式的值为零,则执行最后的else子句;此时如果程序中最内层的if语句没有else子句,既没有最后的else子句,那么将不进行任何操作。

    问题分析:先判断输入数字的奇偶性;如果为奇数判断其是否为三的倍数;如果为偶数判断其为几位数。
    问题分析图