流程控制

为什么使用流程控制?

有的时候我想根据程序中当时的环境执行不同的代码,或者有的时候需要重复执行某段代码。这两种方法就是需要用到流程控制中的分支和循环。
分支:有条件的执行代码

循环:重复执行相同的代码

布尔运算符:


布尔运算符-处理布尔值:


条件布尔运算符:


布尔赋值运算符:


goto语句:

在程序中我们可以给代码加上标签,这样就可以使用goto
语句直接调到标签的地方去执行
goto语句的语法
	goto <labelName>;
标签定义
	<labelName>:


实例:
	int myInteger = 5;
	goto myLabel;
	myInteger ++;
	myLabel:
	Console.WriteLine(myInteger);

if语句 :

if的语法
	if(<test>)
		<code executed if <test> is true>
先执行<test>,如果结果是true就执行
案例:
	bool var1 = true;
	if(var1)
	Console.WriteLine(var1);
if else语法
	if(<test>)
		<code executed if <test> is true>
	else
		<code executed if <test> is false>

如果if和else要执行的代码有多行,可以加上{}组成一个块
	
	if(<test>){
		<code executed if <test> is true>
	}else{
		<code executed if <test> is false>
	}

三元运算符:

语法
	<test> ? <resultIfTrue> : <resultIfFalse>
示例
string resStr = (myInteger<10) ? "Less than 10":"Greater than or equal to 10"

if语句的其他结构:

if (){
}else if(){
}else if(){
}else{
}
else if可以有0或者多个
else 只能有0或者1个

switch语句:

switch语句类似于if语句,switch可以用来将测试变量跟多个值
进行比较。switch的语法结构如下:
switch (<testvar>){
	case <comparisonVal1>:
	<code to execute if <testvar> == <comparisionVal1>>
	break;
	case <omparisonVal2>:
	<code to execute if <testvar> == <comparisionVal2>>;
	break;
	...
	case <comparisionN>:
	<code to execute if <testvar>==<comparisionValN>>;
	break;
	default:
	<code to execute if <testvar>!=<comparisionVals>>
	break;
}
<testvar> 这里不管直接放一个字面值还是变量,它的类型是数值类型跟char类型

while循环:

语法结构
	while(<test>){
		<code to be looped>
	}

for循环:

语法结构
	for(<initialization;<condition>;<operation>>){
		<code to loop>
	}
<initialization>是初始化,这里可以定义一个变量,也可以给变量赋值
<condition>是判断是否执行循环的条件
<operation>每次执行完循环都会执行operation代码

循环的中断 break(终止当前循环)。循环的中断 continue(终止当前循环继续下一个循环)。循环的中断 return 跳出循环(跳出函数)。



阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页