imHHHNN 2022-10-13 15:04 采纳率: 85.7%
浏览 25
已结题

c语言刚学if为什么没有报错输出永远是0?

#include <stdio.h>

int main()
{
int x;
scanf("%d",&x);
int f=0;

if (x=0){
     f=1;
}else    if (x>0){
        f=2;        
    }else{
        f=2*x;
    } 
     
printf("f=%d",f);
return 0;    

}

  • 写回答

2条回答 默认 最新

  • [Pokemon]大猫猫 2022-10-13 15:19
    关注

    第一个if语句,判断表达式把0赋给了x,为假走else if判断也为假,最后走else部分,因为前面把x改成了0所以结果是0

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 10月19日
  • 已采纳回答 10月13日
  • 修改了问题 10月13日
  • 创建了问题 10月13日