44问答网
所有问题
C语言中 int a=0,b=0,c=0; if(a&&++b) c++; printf("%d,%d\n",b,c); b和c为什么都等于0
如题所述
举报该问题
推荐答案 2015-06-18
因为a=0所以&&右边的就被短路了,不被执行, 所以最后a, b, c的值都不变,都为0
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://44.wendadaohang.com/zd/VGDGYGRRYRGW3DZZWG.html
其他回答
第1个回答 推荐于2018-03-02
c语言
中&&是一种双目运算符,表示与运算,而当左边所给表达式或变量为0时,不再计算右侧,整个表达式为零。
追问
若a=1的话 b和c也就都等于1了是这样吗
本回答被提问者和网友采纳
第2个回答 2015-06-18
只要条件a为假,就不会执行++b 和 c++了,所以b和c都等于0
追问
if(a&&++b)
这个什么意思呢
相似回答
...main
()
{int
a=0,b=0,c=0;if(++
a>0||
++b
>0) ++
c;
printf(
"
%d,%d,%d
...
答:
因为if成立,所以
++c
肯定执行了。所以a,c变成了1,b还是0
int a
,b,c
;
a=0,b=0,c=0;
if(++
a||
b++&&c++)
printf(
"
%d,%d,%d
",a...
答:
因为||与&&同等级 按从右至左运算
0&&0=0
1||0=1 为真。所以打印1
,0,0
if
语句中没有{ },是如何执行的
答:
如果
if
语句中无{},if函数只会执行if后面的紧跟的语句,再往后面的语句不再执行。编程语言为严格的机器语言,建议所有if语句都要加上{},指示if函数的作用范围,以此来养成良好的变成习惯。
用
C语言
编写一个程序,输入一个字符串,统计其中各个字符出现的次数_百 ...
答:
ch
;int
a=0,b=0,c=0,
d
=0;
while((ch=getchar())!='\n'){
if(
ch>='A'&&ch<='Z'||ch>='a'&&ch<='z'
)a++
;else if(ch>='0'&&ch<='9')b++;else if(ch==' '
)c++;
else d++;}
printf(
"字母=%d\n数字=%d\n空格=%d\n其他字符=%d\n",a
,b,c,
d);return 0;} ...
大家正在搜
c语言int转char
c语言long int
c语言中的int
c语言 int范围
c语言int类型
c语言int型数据范围
int main
if int
C语言字符串
相关问题
int a=0,b=0,c=0; if(a&&++b) c+...
123.有以下程序 #include <stdio.h> m...
int a=b=c=0; a++&&b++||c++;求 a...
int a,b,c; a=0,b=0,c=0; if(++...
void main() { int a=4,b=5,c=0;...
C语言题: 已知a=b=c=0;则++a||++b&&c++...
有如下程序 main() { int a=2,b=-1,c=...
void main() { int a=2,b=-1,c=2...