zoukankan      html  css  js  c++  java
  • 冒泡排序法demo(两层嵌套for循环)

    namespace ConsoleDemo

    {

        /// <summary>

        /// 双层循环实现冒泡排序

        /// </summary>

        class Program

        {

            static void Main(string[] args)

            {

                SortedNumbers();

            }

            /// <summary>

            /// 该方法获得需要排序的数组,表调用排序方法进行排序

            /// </summary>

            public static void SortedNumbers()

            {

                int numberCount;

                int[] numbers;

                Console.WriteLine("----------silly冒泡排序法----------");

                Console.WriteLine("请问您要对多少为数字进行排序?");

                numberCount = Convert.ToInt32(Console.ReadLine());

                numbers = new int[numberCount];

                Console.WriteLine("请输入您要进行排序的这{0}个数字:",numberCount);

                for (int i = 0; i < numberCount; i++)

                {

                    numbers[i] = Convert.ToInt32(Console.ReadLine());

                }

                Console.WriteLine("\n您要进行排序的{0}个数字分别为:",numberCount);

                for (int i = 0; i < numberCount; i++)

                {

                    Console.Write(numbers[i].ToString() + "\t");

                }

                Console.WriteLine("\n您要对这{0}个数字进行什么排序?(1表示升序,2表示降序)",numberCount);

                int method = Convert.ToInt32(Console.ReadLine());

                while (method != 1 && method != 2)

                {

                    Console.WriteLine("只能输入1或者2,请您重新输入!");

                    method = Convert.ToInt32(Console.ReadLine());

                }

                //调用排序方法

                ExecuteSortedMethod(numbers, method);

                Console.WriteLine("排序后的结果为:");

                for (int i = 0; i < numberCount; i++)

                {

                    Console.Write(numbers[i].ToString() + "\t");

                }

                Console.WriteLine("\n----------sisi冒泡排序法----------");

                Console.ReadKey();

            }

            /// <summary>

            /// 接受数字参数和排序方法参数,进行冒泡排序

            /// </summary>

            /// <param name="num">要进行排序的整数数组</param>

            /// <param name="sortedMethod">排序方法标识:1为升序,2为降序</param>

            public static void ExecuteSortedMethod(int[] num, int sortedMethod)

            {

                if (sortedMethod == 1)      //升序排列

                {

                    for (int i = 0; i < num.Length -1; i++)

                    {

                        for (int j = 0; j < num.Length - 1 - i; j++)

                        {

                            if (num[j] > num[j + 1])

                            {

                                int temp = num[j];

                                num[j] = num[j + 1];

                                num[j + 1] = temp;

                            }

                        }

                    }

                }

                if (sortedMethod == 2)      //降序排列

                {

                    for (int i = 0; i < num.Length - 1; i++)

                    {

                        for (int j = 0; j < num.Length - 1 - i; j++)

                        {

                            if (num[j] < num[j + 1])

                            {

                                int temp = num[j];

                                num[j] = num[j + 1];

                                num[j + 1] = temp;

                            }

                        }

                    }

                }

            }

        }

    }

  • 相关阅读:
    MyBatis---集合查询(一对多)
    MyBatis---简单关系查询
    MyBatis---简介
    MyBatis---简单增删改查的带事物的例子
    log4j.properties配置文件详解
    Hibernate---实体类注释简介
    Hibernate---数据操作示例BY实体类注释
    Hibernate---数据操作示例BY实体映射文件
    JDBC---java与数据库中数据类型的对应关系
    Hibernate---session
  • 原文地址:https://www.cnblogs.com/lqsilly/p/2917559.html
Copyright © 2011-2022 走看看