8、C#基础整理(数组和冒泡排序)_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > 8、C#基础整理(数组和冒泡排序)

8、C#基础整理(数组和冒泡排序)

 2014/12/18 15:31:02  苏悠莫  程序员俱乐部  我要评论(0)
  • 摘要:数组概念:定义一组同类型的指定个数的变量,索引从0开始例:int[]shuname=newint[10];//定义一组有10个数据的数组shuname[0]=1;Console.WriteLine(shuname[0]);//打印出1数组与for循环结合的练习:1、彩票问题:通过数组录入随机生成的红球。//定义一个含有6个数据的数组int[]hongqiu=newint[6];Randomr=newRandom();//随机生成红球的方法for(inti=0;i<6;i++)
  • 标签:C# 数组 冒泡排序

数组

概念:定义一组同类型的指定个数的变量,索引从0开始

例:

int[] shuname = new int[10];//定义一组有10个数据的数组
shuname[0] = 1;
Console.WriteLine(shuname[0]);//打印出1

数组与for循环结合的练习:

1、彩票问题:通过数组录入随机生成的红球。

//定义一个含有6个数据的数组
int[] hongqiu = new int[6];
Random r = new Random();
//随机生成红球的方法
for (int i = 0; i < 6; i++)
{
    hongqiu[i] = r.Next(1, 34);
    for (int j = 0; j < i; j++)
    {
        if (hongqiu[i] == hongqiu[j])
        {
            //判断是否出现重复的红球,若出现就i--再重复循环
            i--;
            break;
        }
    }

}
Console.WriteLine("红球为:");
//打印出来红球
for (int i = 0; i < 6; i++)
{
    Console.Write("{0} ", hongqiu[i]);
}
//随机生成一个蓝球
int blue;
while(true)
{
    blue = r.Next(1,17);
    for(int i = 0;i<6;i++)
    {
        //判断蓝球是否与红球中任意一数重复
        if (blue != hongqiu[i])
        {
            continue;
        }
        else
            break;
    }
    break;
}
Console.WriteLine("蓝球为:{0}", blue);

2、遍历数组

for (int i = 0;i<hongqiu.Length;i++)
{
       int h;
       h = hongqiu[i];
       Console.WriteLine(h);
}

hongqiu.Length是数组的元素个数

3、自动遍历数组的方法:foreach

foreach (int p in hongqiu)//p的数据类型需要与数组保持一致
{
    Console.WriteLine(p);
}

数组的等量代换:冒泡排序

1、等量代换的思路:

int a = 0;
int b = 1;
//要交换a和b,需要一个中间变量c
int c = a;
a = b;
b = c;

2、在数组中通过for循环的运用

思路:用两层for循环嵌套:外层的for循环(从索引为0开始)给 i 一个数组中的值

        内层的for循环(从索引为 i 开始)给 j 一个数组中的值,并与 i 进行循环比较,最后排出想要的顺序。

例:输入五个人的成绩,进行升序的冒泡排序

            int[] shuzu = new int[5];
            Console.WriteLine("请输入五个人的成绩:");
            for (int i = 0; i < 5; i++)
            {
                shuzu[i] = int.Parse(Console.ReadLine());
            }
            for (int i = 0; i < 5; i++)
            {
                for (int j = i+1; j < 5; j++)
                {
                    if (shuzu[i] > shuzu[j])
                    {
                        int zhong = shuzu[j];
                        shuzu[j] = shuzu[i];
                        shuzu[i] = zhong;
                    }
                }
            }
            foreach (int a in shuzu)
            {
                Console.WriteLine(a);
            }

 

发表评论
用户名: 匿名