设a=3,b=4,c=5,则逻辑表达式: !(a+b0+c-1&&b+c/2 的值 我用C写的, main() { int a,b,c; a=3; b=4; c=5;

我用C写的,
main()
{
int a,b,c;
a=3;
b=4;
c=5;
int x; 我运行时,怎么老是这里错误呢,不懂,
x=(!(a+b)+c-1&&b+c/2);
printf("x=%d\n",x);
getch();
return 0:
}
所以在这里请大师帮忙下,小弟万分感激
怎么我的书上都没有说过这些呢,只说过真假呀,那要怎么改呀

需要强制类型装换!
(!(a+b)+c-1&&b+c/2)是true和false吧?x是整形 好像是的吧?你看看呢
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-10-23
x在赋值语句那,数据类型变了。应该将它定义成布尔数据类型。
第2个回答  2010-10-22
没有问题吖
第3个回答  2010-10-22
int x=0;