判斷
判斷結(jié)構(gòu)要求程序員指定一個或多個要評估或測試的條件,以及條件為真時要執(zhí)行的語句(必需的)和條件為假時要執(zhí)行的語句(可選的)。
下面是大多數(shù)編程語言中典型的判斷結(jié)構(gòu)的一般形式:
判斷語句
C# 提供了以下類型的判斷語句。
if 語句,一個 if 語句 由一個布爾表達(dá)式后跟一個或多個語句組成。if...else 語句,一個 if 語句 后可跟一個可選的 else 語句,else 語句在布爾表達(dá)式為假時執(zhí)行。嵌套 if 語句,您可以在一個 if 或 else if 語句內(nèi)使用另一個 if 或 else if 語句。switch 語句,一個 switch 語句允許測試一個變量等于多個值時的情況。嵌套 switch 語句,您可以在一個 switch 語句內(nèi)使用另一個 switch 語句。
? : 運算符
條件運算符 ? :,可以用來替代 if...else 語句。它的一般形式如下:
其中,Exp1、Exp2 和 Exp3 是表達(dá)式。
注意:冒號的使用和位置。
如果 Exp1 為真,則計算 Exp2 的值,結(jié)果即為整個 ? 表達(dá)式的值。如果 Exp1 為假,則計算 Exp3 的值,結(jié)果即為整個 ? 表達(dá)式的值。如果 num>0 則返回 num *Jc(num - 1),否則返回 1。using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace jiecheng
{
class jiecheng
{
public int Jc(int num)
{
return num > 0 ? num *Jc(num - 1):1; //如果num>0則返回num *Jc(num - 1),否則返回1
}
}
class excutejiecheng
{
static void Main(string[] args)
{
jiecheng n = new jiecheng();
int result = n.Jc(Convert.ToInt16(Console.ReadLine()));
Console.WriteLine("result is {0}",result);
Console.ReadKey();
}
}
}
循環(huán)
一般情況下,語句是順序執(zhí)行的:函數(shù)中的第一個語句先執(zhí)行,接著是第二個語句,依此類推,然而有時候,可能需要多次執(zhí)行同一塊代碼。編程語言提供了允許更為復(fù)雜的執(zhí)行路徑的多種控制結(jié)構(gòu),比如循環(huán)語句。
循環(huán)語句允許我們多次執(zhí)行一個語句或語句組,大多數(shù)編程語言中的循環(huán)語句一般形式如下:
循環(huán)類型
C# 提供了以下幾種循環(huán)類型。
while 循環(huán),給定條件為真時,重復(fù)語句或語句組。它會在執(zhí)行循環(huán)主體前測試條件。for/foreach 循環(huán),多次執(zhí)行一個語句序列,簡化管理循環(huán)變量代碼。do...while 循環(huán),除了在循環(huán)主體結(jié)尾測試條件外,其他與 while 語句類似。嵌套循環(huán),在 while、for 或 do..while 循環(huán)內(nèi)使用一個或多個循環(huán)。
循環(huán)控制語句
循環(huán)控制語句更改執(zhí)行的正常序列。
當(dāng)執(zhí)行離開一個范圍時,所有在該范圍中創(chuàng)建的自動對象都會被銷毀。break 語句,終止 loop 或 switch 語句,程序流將繼續(xù)執(zhí)行緊接著 loop 或 switch 的下一條語句。continue 語句,引起循環(huán)跳過主體的剩余部分,立即重新開始測試條件。
無限循環(huán)
如果條件永遠(yuǎn)不為假,則循環(huán)將變成無限循環(huán)。for 循環(huán)在傳統(tǒng)意義上可用于實現(xiàn)無限循環(huán)。由于構(gòu)成循環(huán)的三個表達(dá)式中任何一個都不是必需的,您可以將某些條件表達(dá)式留空來構(gòu)成一個無限循環(huán)。條件表達(dá)式不存在時,會被假設(shè)為真,一般情況下,可以使用 for(;;) 結(jié)構(gòu)來表示一個無限循環(huán)。using System;
namespace Loops
{
class Program
{
static void Main(string[] args)
{
for (; ; )
{
Console.WriteLine("Hey! Dead cycle");
}
}
}
}
該文章在 2023/11/20 9:43:40 編輯過