C# for循環(huán)的經(jīng)典案例集錦
由于for循環(huán)可以通過控制循環(huán)變量的初始值和循環(huán)結束條件來改變遍歷的區(qū)間,所以在排序或者遍歷的時候,利用for循環(huán)就比較簡單,以下是本人學習后得到的一些總結案例。
1.排序的應用
1)交換排序:通過取出的數(shù)和該數(shù)位置后面剩余的其他數(shù)逐一進行比較,將最大的或者最小的一個數(shù)放在一組數(shù)的首位,然后再將第二大的數(shù)放在第二位,依次排完所有的數(shù)。
for(int i = 0; i < (num.length - 1); i ++) { for(int j = i + 1; j < num.length; j ++) { if(num[i] > num[j]) { int temp = num[j]; num[i] = num[j]; num[j] = temp; } } }
以上代碼就是實現(xiàn)將數(shù)組num中的最小值從i - num.length中找出來,并存在第一個位置,其中 num 是一個存放了大量數(shù)據(jù)的數(shù)組。
2)冒泡排序:通過不斷的將相鄰的兩個數(shù)進行大小比較,大的數(shù)不斷的往后面的位置交換,小的數(shù)向數(shù)組的頂部位置浮動。
for (int i = nums.Length - 1; i > 0; i--) { //在 0-i 范圍內(nèi),將該范圍內(nèi)最大的數(shù)字沉到i for (int j = 0; j < i; j++) { if (nums[j] > nums[j+1]) { //交換 int temp = nums[j]; nums[j] = nums[j+1]; nums[j+1] = temp; } } }
3)選擇排序:通過交換排序的方式,將某個范圍內(nèi)的最小數(shù)提到該范圍內(nèi)的第一位。
for (int i = 0; i < nums.Length - 1; i++) { int index = i; //先假設最小數(shù)的下標是i for (int j = i + 1; j < nums.Length; j++) { if (nums[j] < nums[index]) { index = j; } } int temp = nums[i]; nums[i] = nums[index]; nums[index] = temp; }
2.質(zhì)數(shù)的判斷
bool isFinnd = false; for (int i = 2; i < num; i++) { if (num % i == 0) { isFinnd = true; break;//當找到一個數(shù) i 能夠整除 num 時,說明當前的 num 是一個合數(shù),結束當前的for循環(huán) } } if (!isFinnd)//如果 num 是一個質(zhì)數(shù),則報錯提示 { //判斷出當前的num是質(zhì)數(shù) }
當前代碼的 num 是一個具體的整型變量。
除了以上的案例,當然還有很多的應用場景,需要大家在運用的時候不斷自己總結。
以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持腳本之家!
相關文章
C#無法打開計算機“.”上的 IISADMIN 服務的解決方法
在使用c#進行控制IIS服務啟動停止的時候,提示:無法打開計算機“.”上的 IISADMIN 服務2015-01-01