8、C#基础整理(数组和冒泡排序)
数组
概念:定义一组同类型的指定个数的变量,索引从0开始
例:
int[] shuname = new int[];//定义一组有10个数据的数组
shuname[] = ;
Console.WriteLine(shuname[]);//打印出1
数组与for循环结合的练习:
1、彩票问题:通过数组录入随机生成的红球。
//定义一个含有6个数据的数组
int[] hongqiu = new int[];
Random r = new Random();
//随机生成红球的方法
for (int i = ; i < ; i++)
{
hongqiu[i] = r.Next(, );
for (int j = ; j < i; j++)
{
if (hongqiu[i] == hongqiu[j])
{
//判断是否出现重复的红球,若出现就i--再重复循环
i--;
break;
}
} }
Console.WriteLine("红球为:");
//打印出来红球
for (int i = ; i < ; i++)
{
Console.Write("{0} ", hongqiu[i]);
}
//随机生成一个蓝球
int blue;
while(true)
{
blue = r.Next(,);
for(int i = ;i<;i++)
{
//判断蓝球是否与红球中任意一数重复
if (blue != hongqiu[i])
{
continue;
}
else
break;
}
break;
}
Console.WriteLine("蓝球为:{0}", blue);
2、遍历数组
for (int i = ;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 = ;
int b = ;
//要交换a和b,需要一个中间变量c
int c = a;
a = b;
b = c;
2、在数组中通过for循环的运用
思路:用两层for循环嵌套:外层的for循环(从索引为0开始)给 i 一个数组中的值,
内层的for循环(从索引为 i 开始)给 j 一个数组中的值,并与 i 进行循环比较,最后排出想要的顺序。
例:输入五个人的成绩,进行升序的冒泡排序
int[] shuzu = new int[];
Console.WriteLine("请输入五个人的成绩:");
for (int i = ; i < ; i++)
{
shuzu[i] = int.Parse(Console.ReadLine());
}
for (int i = ; i < ; i++)
{
for (int j = i+; j < ; 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);
}
8、C#基础整理(数组和冒泡排序)的更多相关文章
- 060 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 07 冒泡排序
060 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 07 冒泡排序 本文知识点:冒泡排序 冒泡排序 实际案例分析冒泡排序流程 第1轮比较: 第1轮比较的结果:把最 ...
- 9、C#基础整理(多维数组)
多维数组 1.二维数组: 表示方法: int[y,x],x.y是索引,y代表行,x代表列. 例: , ]{ {,,}, {,,} };//{}可以不写 修改方法: second[, ] = ;//表示 ...
- 《利用python进行数据分析》读书笔记--第四章 numpy基础:数组和矢量计算
http://www.cnblogs.com/batteryhp/p/5000104.html 第四章 Numpy基础:数组和矢量计算 第一部分:numpy的ndarray:一种多维数组对象 实话说, ...
- 第二十四节:Java语言基础-讲解数组的综合应用
数组的综合应用 // 打印数组 public static void printArray(int[] arr) { for(int x=0;x<arr.length;x++) { if(x!= ...
- [.net 面向对象编程基础] (17) 数组与集合
[.net 面向对象编程基础] (17) 数组与集合 学习了前面的C#三大特性,及接口,抽象类这些相对抽象的东西以后,是不是有点很累的感觉.具体的东西总是容易理解,因此我们在介绍前面抽象概念的时候,总 ...
- PHP基础 之 数组(一)
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...
- R语言基础:数组&列表&向量&矩阵&因子&数据框
R语言基础:数组和列表 数组(array) 一维数据是向量,二维数据是矩阵,数组是向量和矩阵的直接推广,是由三维或三维以上的数据构成的. 数组函数是array(),语法是:array(dadta, d ...
- Java之--Java语言基础组成—数组
Java语言基础组成-数组 Java语言由8个模块构成,分别为:关键字.标识符(包名.类名.接口名.常量名.变量名等).注释.常量和变量.运算符.语句.函数.数组. 本片主要介绍Java中的数组,数组 ...
- OC基础 可变数组与不可变数组的使用
OC基础 可变数组与不可变数组的使用 1.不可变数组 1.1不可变数组的创建 //实例方法 NSArray *array = [[NSArray alloc] initWithObjects:&quo ...
- 机器学习 —— 基础整理(六)线性判别函数:感知器、松弛算法、Ho-Kashyap算法
这篇总结继续复习分类问题.本文简单整理了以下内容: (一)线性判别函数与广义线性判别函数 (二)感知器 (三)松弛算法 (四)Ho-Kashyap算法 闲话:本篇是本系列[机器学习基础整理]在time ...
随机推荐
- java(课程设计之记事本界面部分代码公布)
代码:涉及记事本的一些界面......!! /* *java课程设计之记事本(coder @Gxjun) * 编写一个记事本程序 * 要求: * 用图形用户界面实现. * 能实现编辑.保存.另存为.查 ...
- IO流 总结二
流只能操作数据. File 类 用来将文件或者文件夹封装成对象. 方便文件与文件夹进行操作 File对象可以作为参数传递给流的构造函数. 可以将已有的和已出现的文件或者文件夹封装成对象 File a ...
- Java:多线程,使用同步锁(Lock)时利用Condition类实现线程间通信
如果程序不使用synchronized关键字来保证同步,而是直接使用Lock对象来保证同步,则系统中不存在隐式的同步监视器,也就不能用wait().notify().notifyAll()方法进行线程 ...
- php -l 检查文件是否语法错误
有时候在进行网页开发的时候,后台文件的语法错误比较难检查出来,这时候使用php -l filename可对文件的语法进行检查.
- AngularJS directive入门例子
这是<AngularJS>这本书里面提供的一个例子: JS代码: var expanderModule=angular.module('expanderModule', []) expan ...
- SqlFunctions 可以在EF种调用sqlserver的函数
在EF5环境下,首先添加EF环境,在引用中添加Syste.Data.Entity,再添加命名空间 using System.Data.Objects.SqlClient; 然后写一个控制器测试 pub ...
- linux tar 增量备份命令
tar --newer-mtime "2013-09-17 00:00:00" -zcvf /var/www/good.tar.gz spider/
- Linux 下配置多机实时同步
没钱的时候,用此方案做网站内容的负载均衡.异地备份,经济实惠又方便(仅针对网站文件做实时同步,如果数据库,则考虑mysql的多主架构) 一.机器配置及机房IP A机,位于杭州,IP: 115.33.2 ...
- shell学习记录002-知识点储备
1.echo "4*0.33" |bc #计算机功能的运用 [root@oc3408554812 shell]# ss=22; [root@oc3408554812 shel ...
- 客户端访问AIDLService(远程绑定Service)
import android.os.Bundle;import android.os.IBinder;import android.os.RemoteException;import android. ...