C#语句先后顺序对程序的结果有影响吗

 更新时间:2015年10月29日 11:51:22   作者:刘要直  
有朋友问我,C#中C#语句先后顺序影响程序的结果吗?告诉大家,答案是肯定的,绝对影响程序的结果,所以在程序中一定要注意C#语句的顺序

下面通过一段代码给大家解析C#语句的顺序不同所执行的结果不一样。

using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Text;
 namespace Test
 {
  /// <summary>
  /// 自定义类,封装加数和被加数属性
  /// </summary>
  class MyClass
  {
   private int x = ;      //定义int型变量,作为加数
   private int y = ;      //定义int型变量,作为被加数
   /// <summary>
   /// 加数
   /// </summary>
   public int X
   {
    get
    {
     return x;
    }
    set
    {
     x = value;
    }
   }
   /// <summary>
   /// 被加数
   /// </summary>
   public int Y
   {
    get
    {
     return y;
    }
    set
    {
     y = value;
    }
   }
   /// <summary>
   /// 求和
   /// </summary>
   /// <returns>加法运算和</returns>
   public int Add()
   {
    return X + Y;
   }
  }
  class Program
  {
   static void Main(string[] args)
   {
    MyClass myclass = new MyClass(); //实例化MyClass的对象
    myclass.X = ;     //为MyClass类中的属性赋值
    myclass.Y = ;     //为MyClass类中的属性赋值
    int kg = myclass.Add();
    Console.WriteLine(kg); //调用MyClass类中的Add方法求和
    Console.ReadLine();
   }
  }
 }

第60行的语句若是被放到第56行,则结果输出是0不是8,所以,在设计程序时,要注意语句次序,有着清晰的思维逻辑 。

下面还有点时间,接着给大家介绍C#中循环语句总结

通过使用循环语句可以创建循环。 循环语句导致嵌入语句根据循环终止条件多次执行。 除非遇到跳转语句,否则这些语句将按顺序执行。

C#循环语句中使用下列关键字:

· do...while

· for

· foreach...in

· while

do...while

    do...while语句执行一个语句或语句重复,直到指定的表达式的计算结果为false, 循环的身体必须括在大括号内{},while条件后面使用分号结尾

示例

 下面的示例 实现do-while循环语句的执行

public class TestDoWhile 
{
 static void Main () 
 {
  int x = 0;
  do 
  {
    Console.WriteLine(x);
    x++;
  } while (x < 10);
 }
}
/*

    Output:

    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
*/

    do-while循环在计算条件表达式之前将执行一次,如果 while表达式计算结果为 true,则,执行将继续在第一个语句中循环。 如果表达式计算结果为 false,则会继续从 do-while 循环后的第一个语句执行。

     do-while 循环还可以通过break、goto、return 或 throw 语句退出。

for

for 循环重复执行一个语句或语句块,直到指定的表达式计算为 false 值。 for 循环对于循环数组和顺序处理很有用。

示例

在下面的示例中,int i 的值将写入控制台,并且 i 在每次通过循环时都加 1。

class ForTest 
{
 static void Main() 
 {
  for (int i = 1; i <= 10; i++)
  {
   Console.WriteLine(i);
  }
 }
}
/*

Output:

1
2
3
4
5
6
7
8
9
10
*/

for 语句重复执行括起来的语句,如下所述:

· 首先,计算变量 i 的初始值。

· 然后,只要 i 的值小于或等于 10,条件计算结果就为 true。此时,将执行 Console.WriteLine 语句并重新计算 i。

· 当 i 大于10 时,条件变成 false 并且控制传递到循环外部。

    由于条件表达式的测试发生在循环执行之前,因此 for 语句可能执行零次或多次。可以通过使用break、goto 、 throw或return语句退出该循环。

所有表达式的 for语句是可选的例如对于下面的语句用于写一个无限循环。

for (; ; )
{
 // ...
}

foreach...in

    foreach 语句对实现 System.Collections.IEnumerable 或 System.Collections.Generic.IEnumerable<T>接口的数组或对象集合中的每个元素重复一组嵌入式语句。 foreach 语句用于循环访问集合,以获取您需要的信息,但不能用于在源集合中添加或移除项,否则可能产生不可预知的副作用。 如果需要在源集合中添加或移除项,请使用 for循环。

    嵌入语句为数组或集合中的每个元素继续执行。 当为集合中的所有元素完成循环后,控制传递给 foreach 块之后的下一个语句。

    可以在 foreach 块的任何点使用 break 关键字跳出循环,或使用 continue 关键字进入循环的下一轮循环。

foreach 循环还可以通过 break、goto、return 或 throw 语句退出。

示例

 在此示例中,使用 foreach 显示整数数组的内容。

 class ForEachTest
 {
  static void Main(string[] args)
  {
   int[] barray = new int[] { 0, 1, 2, 3, 4, 5};
   foreach (int i in barray)
   {
    System.Console.WriteLine(i);
   }
  }
 }
 /*

    Output:

    0
    1
    2
    3
    4
    5
*/

while

   while 语句执行一个语句或语句块,直到指定的表达式计算为 false。 

 class WhileTest 
 {
  static void Main() 
  {
   int n = 1;
   while (n < 5) 
   {
    Console.WriteLine(n);
    n++;
   }
  }
 }
 /*

        Output:

        1
        2
        3
        4
        */

相关文章

  • C#调用C++DLL传递结构体数组的终极解决方案

    C#调用C++DLL传递结构体数组的终极解决方案

    这篇文章主要介绍了C#调用C++DLL传递结构体数组的终极解决方案的相关资料,需要的朋友可以参考下
    2017-01-01
  • 在Winform程序中使用Spire.Pdf实现页面添加印章功能的实现

    在Winform程序中使用Spire.Pdf实现页面添加印章功能的实现

    这篇文章主要介绍了在Winform程序中使用Spire.Pdf实现页面添加印章功能的实现,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-09-09
  • C#6.0中你可能不知道的新特性总结

    C#6.0中你可能不知道的新特性总结

    C# 6 已经出来很久了,但最近发现真的有必要整理下,下面这篇文章主要给大家介绍了关于C#6.0中一些你可能不知道的新特性的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2018-04-04
  • C#实现简单成绩管理系统的完整步骤

    C#实现简单成绩管理系统的完整步骤

    这篇文章主要给大家介绍了关于C#实现简单成绩管理系统的完整步骤,文中通过示例代码介绍的非常详细,对大家的学习或者使用C#具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-11-11
  • 在C#中如何使用Dapper详解(译)

    在C#中如何使用Dapper详解(译)

    这篇文章主要给大家介绍了关于在C#中如何使用Dapper的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起看看吧
    2018-09-09
  • C#使用foreach遍历哈希表(hashtable)的方法

    C#使用foreach遍历哈希表(hashtable)的方法

    这篇文章主要介绍了C#使用foreach遍历哈希表(hashtable)的方法,是C#中foreach语句遍历散列表的典型应用,非常具有实用价值,需要的朋友可以参考下
    2015-04-04
  • C#基础概念二十五问 16-20

    C#基础概念二十五问 16-20

    C#基础概念二十五问 16-20...
    2007-04-04
  • VS2022+unity3D开发环境搭建的实现步骤

    VS2022+unity3D开发环境搭建的实现步骤

    本文主要介绍了VS2022+unity3D开发环境搭建的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-05-05
  • .Net6开发winform程序使用依赖注入

    .Net6开发winform程序使用依赖注入

    本文详细讲解了.Net6开发winform程序使用依赖注入的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-12-12
  • C#控制台输出进度和百分比的实例代码

    C#控制台输出进度和百分比的实例代码

    C#控制台输出进度和百分比的实例代码,需要的朋友可以参考一下
    2013-03-03

最新评论