当前位置:编程学习 > C#/ASP.NET >>

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#编程语言的一个问题。对类中的数组定义相应的访问属性,是否不利于程序的安全性。

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,