C#中的编程小问题
static void Main(string[] args) { int x = 8; int y = 0; if (x > 6) { y = y+1; } else if (x > 5) { y = y + 1; } else { y=5555; } Console.WriteLine("x={0}y={1}", x, y); Console.ReadKey();结果y为什么等于1.而不是等于2
追问:白痴.你去提问试试啊
追问:白痴.你去提问试试啊
答案:代码是从上往下执行,所以会首先进入第一个if 当if的条件成立时. 就不会继续接着判断地下的else if 或者else
else if 和else 是当前面的条件都不成立时才会进入判断.
if(x>6) 满足, 所以y=y+1 -->y=0+1=1
if(){}else if(){}else{}结构的只要一个if符合就不会进其他的if的乱七八糟 你不会把代码排整齐了啊,白痴if (x > 6)
y=y+1; //y=0;加上1就变成1了
下面的,因为是else,所以不执行
这个是判断,只判断一次,如果外边有个循环的话,结果会等于2
你需要先学习怎么看程序的执行流程,试试画程序流程图,这个很重要。
上一个:C# 韵母使用array编程
下一个:关于C#编程语言的一个问题。对类中的数组定义相应的访问属性,是否不利于程序的安全性。