int k=10; if(k=0) printf("Yse"); else printf("%d",k); 结果为什么是0啊?
展开全部
如要判断k是否为0的话,应该用
if(k==0)...
如果用 if(k=0) printf("Yse"); else printf("%d",k);的话
是这样执行的:
为k赋值为0,括号表达式的值为0(即假,条件不满足),于是执行printf("%d",k); 就输出0。
if(k==0)...
如果用 if(k=0) printf("Yse"); else printf("%d",k);的话
是这样执行的:
为k赋值为0,括号表达式的值为0(即假,条件不满足),于是执行printf("%d",k); 就输出0。
追问
括号表达式为什么是0啊?
追答
k赋值为0,括号表达式的值就是0
k赋值为20,括号表达式的值就是20
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你把if(k=0)改成if(k==0)就好了
在C语言中k=0是赋值语句,所以if(k=0)这里把变量k赋值0了,而if(k==0)才是判断语句。
在C语言中k=0是赋值语句,所以if(k=0)这里把变量k赋值0了,而if(k==0)才是判断语句。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询