A. c语言main() {int a=100,x=10,y=20,ok1=5,ok2=0;
ok2是0,所以,这个if不成立,这个if没有else所以不执行a=10,跳出if,就会执行到a=-1,然后,a就等于-1
话说回来,及时上面对a赋值了,最后又给a赋值-1就覆盖 了之前的值,a依然等于-1
B. c语言求解,这个ok1和ok2都不会变,这不是无限循环吗,
这个是选择结构,哪里来的循环,程序中出现了大量的选择结构嵌套,当然这种情况下不要慌,只要记住else 是与之前末配对的if配对使用就好了,还有就是if或者else语句后面都是有执行语句的,也就是要碰到分号才能算是if或else的执行语句
main()
{
int x=100,a=10,b=20,ok1=5,ok2=1;
if(a<b)
{
if(b!=15)
{
if(!ok1)
{
x=1;
}
else if(ok2)
{
x=10;
}
}
}
x=-1;
printf("%d",x);
}
最后x=-1,上面的if语句嵌套构成if语句的执行语句,当if语句执行完后,就和执行语句一起构成上一个if的执行语句,层层嵌套
C. 请问这段C语言什么意思
当if()括号中的数大于0时,表示条件成立,此时if语句会执行。!表示非。
题目中变量ok1的值为1,那么!ok1就的值就为0;所以x--的语句不会执行。
跳到if(ok2),因为ok2=2,所以if语句执行。
继续跳到if(ok3),ok3=3,所以if语句执行,即把3赋给x。
ps:【if(ok3)是在if(ok2)成立的情况下才会执行的】
最后的else是当if(!ok1)和if(ok2)都不执行时,该语句才执行。
因此,最后输出x的结果为3。
D. c语言问题:
先说第一个,因为是连在一起的。
if(x<y)
{if(y!=10)
if(!ok1)a=1;}
第一个成立,第二个也成立;第三个就不成立了,OK1==5;!OK就为假了,这是一具判断表达式真假的问题;C中规定判断表达式只要值不为0即为真,是负数或正数都为真,为0即为假;
else
if(ok2)a=10;
a=-1;
printf("%d\n",a)
进入ELSE语句时进行 if(ok2)a=10;因为OK2==0;故表达式的值为0,即为假,不执行后面的
a=10;语句;
然后进行 a=-1;
故最后结果应该为 -1;
E. C语言程序问题
第一个
if(x>y)
z=x;x=y;y=z;
就是 if(x>y)
{ z=x; }
x=y;y=z; 也就是if的作用范围是z=x那句,并不包括后面的两句,简单来说 :if如果不加大括号,只作用到第一个分号处
第二个:
if (x<y)
if(y!=10)
if(!ok1) a=1;
else
if(ok2) a=10;
a=-1;
相当于
if (x<y)
{
if(y!=10)
{
if(!ok1) a=1;
else
if(ok2) a=10;
}
}
a=-1;
和第一个一样,如果不加大括号,if的作用范围不是无限的
F. if(iok1)和if(ok2)是什么意思啊,求解答
你这个未必太简单了吧!
if(!ok1)意思是如果!ok1不等于0执行语句;
if(ok2)意思是ok2非0执行语句;
还有!叫非运算,是逻辑运算符的一种。
G. C语言问题,这里的两个括号怎么执行
if(!ok1)即if(ok1==0),显然不成立
if(ok2)即if(ok2!=0),显然也不成立
最终x赋值为-1,选择A
H. c语言中int y=10 ,ok1=5 if(y!=10) if(!ok1) 这两句什么意思啊
if(y!=10):判断y 是否不等于10 if(!ok1) 判断ok1是否不等于0
I. c语言。看不懂什么意思。具体怎么读。还有if(!ok1)什么意思
#include<iostream.h>
voidmain()
{
inta=100,x=10,y=20,ok1=5,ok2=0;//ok1,ok2都是变量名而已,相当于x,y
if(x<y)
if(y!=10)//如果y!=10(定义y=20)则执行.
if(!ok1)如果!ok1(ok1=5,也就是!5,!5就是0计算机中只有零和非零判断.)也就是if不执行.
a=1;
else
if(ok2)
a=10;
a=-1;//单独存在,所以最后a=-1.
cout<<a;
}
J. c语言,求解!ok1那步是怎么回事
您好,很高兴为您解答
if(y!=10):判断y 是否不等于10 if(!ok1) 判断ok1是否不等于0
上述方法仅供参考