【C#】三种结构:顺序、分支(if、switch、条件运算符)、循环


顺序结构:

顺序执行语句

 

分支结构:

通过进行一个判断在两个可选的语句序列之间选择执行(分支)

if语句:根据给定条件进行判定,以执行某个分支程序段,最多只能执行一个分支,可不执行分支。

if(条件表达式){   语句1; }

当条件表达式为真,执行语句1,否则,跳过语句1,继续执行下面的语句

 

if(条件表达式);{ 语句1; }

表达式括号后跟了“;”,导致if语句为空语句,大括号内的语句跟if语句没有关系,无论条件真假都会执行语句1

 

③级联式

if(条件表达式1){ 语句1; } else if(条件表达式2){ 语句2; } else{ 语句3; }

哪个条件表达式为真则执行哪个语句,当if和else if的条件表达式都为假时,执行else里的语句3

 

条件运算符:通常有两个分支,只执行一个分支

条件表达式 ? 表达式1 : 表达式2;

如果条件表达式为真,整个条件表达式的值为表达式1的值;

如果条件表达式为假,整个条件表达式的值为表达式2的值。

int c = a > b ? a : b;

 

switch语句:多分支语句,通过判断整型表达式的值,来决定执行语句,通常与case配合使用

switch ——开关,case ——情况,开关决定发生的情况

switch(表达式){ case 值1:{语句1;break;}    //语句中需定义变量时加{},不定义可不加 case 值2:{语句2;break;} …… case 值n:{语句n;break;} default:{语句n+1;break;}   //以上case的情况都不满足时执行 }

break用在switch…case中用于结束某个case,然后执行switch之外的语句。

case后面的标签只能是整型常量或者整型常量表达式,不能用变量作为case的标签。

switch语句比if-else级联式更容易阅读,更直观。

  • 整个default语句可以舍弃掉
  • 多个case(语句块一样时)可以运行一个语句块
  • case中定义变量需要加{}

 

循环结构:

满足某个条件的时候反复执行一个语句序列(循环)

特定条件称为循环条件反复执行程序段称为循环体

 ①while循环(先判断,后执行

while(条件表达式){ 语句; }

条件表达式为执行循环体;一旦条件表达式为停止循环

 

②do…while循环(先执行,后判断

do{ 语句; }while(条件表达式);

先执行循环体,再判断循环条件,直到条件不满足的时候,停止循环。

 

③for循环(先判断,后执行)

for(循环变量初始化;循环条件;循环增量){ 语句; }

先进行循环变量初始化,一般是循环变量为条件判断,若循环条件为真,执行语句后,再执行循环增量,进入下次循环继续判断循环条件。

 

 

break:

在switch语句中,其作用是跳出switch语句

在循环体中,其作用是跳出本层循环(通常与if语句连用)

while(条件表达式1){ if(条件表达式2){ 语句1; break; }
  语句2; }

当条件表达式2为真时,执行语句1后跳出循环,不再执行语句2,也不再继续循环。

 

continue:

在循环体中的作用是结束本次循环(continue后面的代码不再执行),进入下次循环(通常与if连用)

while(条件表达式1){ if(条件表达式2){ 语句1; continue; }   语句2; }

当条件表达式2为真时,执行语句1后结束本次循环,不再执行语句2,再看条件表达式1若为真,则进入下次循环,否则跳出循环。

 

 

循环嵌套:

一般使用for循环嵌套

例子:九九乘法表

c语言版:

 1 #include<stdio.h>
 2 int main()  3 {  4     for(int i = 1; i <= 9; i++)        //
 5  {  6         for(int j = 1; j <= i; j++)        //
 7  {  8             printf("%d*%d=%d",i,j,i*j);  9             printf("   "); 10  } 11         printf("\n"); 12  } 13     return 0; 14 } 

c++版:

 1 #include<iostream>
 2 using namespace std;  3 void jiu(int n)  4 {  5     for(int i = 1; i <= n; i++)        //
 6  {  7         for(int j = 1; j <= i; j++)        //
 8  {  9             cout << i << "*" << j << "=" << i * j; 10             cout << "   "; 11  } 12         cout << endl;        //回车 
13  } 14 } 15 int main() 16 { 17     int n = 9; 18  jiu(n); 19     return 0; 20 } 

c#版:

 1 using System;  2 
 3 namespace ConsoleApplication1  4 {  5     class Program  6  {  7         static void Main(string[] args)  8  {  9             for (int i = 1; i <= 9; i++) 10  { 11                 for (int j = 1; j <= i; j++) 12  { 13                     Console.Write("{0}*{1}={2}", i, j, i * j); 14                     Console.Write("  "); 15  } 16                 Console.WriteLine();    //换行
17  } 18  Console.ReadKey(); 19  } 20  } 21 }

结果:


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM