C# 冒泡排序你还会吗?


 

 

都知道两个for循环搞定,大家是怎么记的这两个循环?

外层:循环数组长度;  i<数组长度-1 //从0开始循环;

内层:循环排序次数;  j<数组长度-1-i;

 

 

 

备忘代码:

 

using  System;
using  System.Collections.Generic;
using  System.Text;

namespace  HelloACCP
{
    
///   <summary>
    
///  本程序演示使用二重循环实现数组的冒泡排序算法
    
///   </summary>
     class  Program
    {
        
static   void  Main( string [] args)
        {
            
int [] scores  =   new   int [ 5 ];
            
int  i, j;   //  循环变量
             int  temp;   //  临时变量

            
//  读入成绩
            Console.WriteLine( " 请输入5个学员的成绩: " );
            
for  (i  =   0 ; i  <   5 ; i ++ )
            {
                Console.WriteLine(
" 请输入第{0}个学员的成绩: " , i  +   1 );
                scores[i] 
=   int .Parse(Console.ReadLine()); // 类型转换  
            }

            
//  开始排序
             for  (i  =   0 ; i  <  scores.Length - 1 ; i ++ )
            {
                
for  (j  =   0 ; j  <  scores.Length - 1   -  i; j ++ )
                {
                    
if  (scores[j]  >  scores[j  +   1 ])
                    {
                        
//  交换元素
                        temp  =  scores[j];
                        scores[j] 
=  scores[j  +   1 ];
                        scores[j 
+   1 =  temp;
                    }
                }
            }

            
//  排序后输出
            Console.WriteLine( " 排序后的成绩为: " );
            
for  (i  =   0 ; i  <   5 ; i ++ )
            {
                Console.Write(
" {0}\t " , scores[i]);
            }

            Console.ReadLine();
        }
    }

}  


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值