134 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			134 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| ---
 | ||
| title: For Loop
 | ||
| localeTitle: 对于循环
 | ||
| ---
 | ||
| # 对于循环
 | ||
| 
 | ||
| for循环重复执行代码块,直到指定的条件表达式求值为false。
 | ||
| 
 | ||
| for循环剖析:
 | ||
| ```
 | ||
| for (initialization; condition; iterator) 
 | ||
|  { 
 | ||
|     body 
 | ||
|  } 
 | ||
| ```
 | ||
| 
 | ||
| *   初始化 - 初始化语句设置初始条件,并在进入循环体之前仅运行一次。
 | ||
| *   condition - 布尔表达式,用于确定循环体是应该再次执行还是循环应该退出。
 | ||
| *   iterator - 在循环体的每次迭代后执行。
 | ||
| 
 | ||
| ### 例1
 | ||
| ```
 | ||
| for (int i = 0; i < 5; i++) 
 | ||
|  { 
 | ||
|     Console.WriteLine("Number " + i); 
 | ||
|  } 
 | ||
| ```
 | ||
| 
 | ||
| ### 输出:
 | ||
| ```
 | ||
| > Number 0 
 | ||
|  > Number 1 
 | ||
|  > Number 2 
 | ||
|  > Number 3 
 | ||
|  > Number 4 
 | ||
| ```
 | ||
| 
 | ||
| ### 例2
 | ||
| ```
 | ||
| int j = 0; 
 | ||
|  for (int i = 0; j < 5; i++) 
 | ||
|  { 
 | ||
|     Console.WriteLine("Numbers {0} {1}", i, j); 
 | ||
|     j++; 
 | ||
|  } 
 | ||
| ```
 | ||
| 
 | ||
| ### 输出:
 | ||
| ```
 | ||
| > Numbers 0 0 
 | ||
|  > Numbers 1 1 
 | ||
|  > Numbers 2 2 
 | ||
|  > Numbers 3 3 
 | ||
|  > Numbers 4 4 
 | ||
| ```
 | ||
| 
 | ||
| ### 实施例3-实施例2的简化
 | ||
| ```
 | ||
| for (int i = 0, j = 0; i < 5 && j < 5; i++, j++) 
 | ||
|  { 
 | ||
|     Console.WriteLine("Numbers {0} {1}", i, j); 
 | ||
|  } 
 | ||
| ```
 | ||
| 
 | ||
| ### 输出:
 | ||
| ```
 | ||
| > Numbers 0 0 
 | ||
|  > Numbers 1 1 
 | ||
|  > Numbers 2 2 
 | ||
|  > Numbers 3 3 
 | ||
|  > Numbers 4 4 
 | ||
| ```
 | ||
| 
 | ||
| ### 例4
 | ||
| ```
 | ||
| for (int i = 5; i > 0; i--) 
 | ||
|  { 
 | ||
|     Console.WriteLine("Number " + i); 
 | ||
|  } 
 | ||
| ```
 | ||
| 
 | ||
| ### 输出:
 | ||
| ```
 | ||
| > Number 5 
 | ||
|  > Number 4 
 | ||
|  > Number 3 
 | ||
|  > Number 2 
 | ||
|  > Number 1 
 | ||
| ```
 | ||
| 
 | ||
| ### 例5
 | ||
| ```
 | ||
| // Infinite loop - The loop body is executed infinitely 
 | ||
|  for (; ;) 
 | ||
|  { 
 | ||
|     Console.WriteLine("The universe is infinite"); 
 | ||
|  } 
 | ||
|  
 | ||
|  // Anything after infinite loop is reported as "Unreachable code detected" in Visual Studio 
 | ||
|  Console.WriteLine("Never considered for execution"); 
 | ||
| ```
 | ||
| 
 | ||
| ### 输出:
 | ||
| ```
 | ||
| > The universe is infinite 
 | ||
|  > The universe is infinite 
 | ||
|  > The universe is infinite 
 | ||
|  > .... 
 | ||
|  > .... 
 | ||
| ```
 | ||
| 
 | ||
| ### 例6
 | ||
| ```
 | ||
| int i = 0; 
 | ||
|  for (; i < 5;) 
 | ||
|  { 
 | ||
|     Console.WriteLine("Number " + i); 
 | ||
|     i++; 
 | ||
|  } 
 | ||
| ```
 | ||
| 
 | ||
| ### 输出:
 | ||
| ```
 | ||
| > Number 0 
 | ||
|  > Number 1 
 | ||
|  > Number 2 
 | ||
|  > Number 3 
 | ||
|  > Number 4 
 | ||
| ```
 | ||
| 
 | ||
| ### 其他资源
 | ||
| 
 | ||
| *   [Microsoft文档](https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/for)
 | ||
| 
 | ||
| ## 结束 |