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

来源:互联网 时间:1970-01-01

数组

概念:定义一组同类型的指定个数的变量,索引从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,需要一个中间变量cint 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); }

 

相关阅读:
Top