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 ...
随机推荐
- 一个.net mvc的例子
控制器 ( Controller) Product 下面功能主要根据多条件搜索产品的列表的功能 public ActionResult ProductList(string cityID, strin ...
- SQL的常用语句
select * from g_members where id between '16' and '31' order by id desc 倒序排列 select * from g_members ...
- 30 个很棒的 PHP 开源 CMS 内容管理系统
本文汇集了30个优秀的开源CMS建站系统,采用PHP开发.以下列表不分先后顺序. 1. AdaptCMS AdaptCMS Lite 是一个开源的CMS系统,主要特点是易用,而且可以轻松和其他系统接驳 ...
- DOM解析和SAX解析的区别
DOM解析和SAX解析的区别 博客分类: XML DOM SAX DOM解析和SAX解析的区别 No 区 别 DOM解析 SAX解析 1 操作 将所有文件读取到内存中形成DOM树,如果文件量过大,则 ...
- JDE报表开发笔记(Client端导出Excel乱码)
之前导出Excel时没发生任何问题, Client端PL/SQL字符集为UTF-8 Oracle JDE E910字符集为UTF-8 解决方式:添加指定用户的字符集(上图即为修改后的用户字符集) 角色 ...
- BZOJ3206 [Apio2013]道路费用
首先我们强制要求几条待定价的边在MST中,建出MST 我们发现这个MST中原来的边是一定要被选上的,所以可以把点缩起来,搞成一棵只有$K$个点的树 然后$2^K$枚举每条边在不在最终的MST中,让在最 ...
- 项目中Enum枚举的使用
在.NET中,枚举一般有两种常见用法,一是表示唯一的元素序列,比如表示订单状态(未提交,待处理,处理中...).另外一种是表示多种组合的状态,比如表示权限,因为可同时有多个不同权限. 基本用法 这里拿 ...
- 终于!Linaro 加盟 Zephyr 项目
导读 为物联网构建实时操作系统的开源协作项目 Zephyr 项目宣布,Linaro 有限责任公司以白金会员的身份加盟该项目.Linaro是一家为 ARM 架构开发开源软件的协作工程组织,也是全球性机构 ...
- VS2010静态编译生成.exe可执行文件
VS2010静态编译生成的.exe可执行文件,可以在其他未安装VS2010的电脑直接运行. 静态编译:就是在编译可执行文件的时候,将可执行文件需要调用的对应动态链接库(.so)中的部分提取出来,链接到 ...
- for update造成的Oracle锁表与解锁
我遇到的情况: 当使用select语句查询表时,后面跟着for update , select * from table for update 当修改表中数据,但是没有commit就关掉PL/SQL, ...