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 ...
随机推荐
- 采购订单限价(包含阶梯价)ME_PROCESS_PO_CUST
为了能管控到钱财的每个环节,公司要求采购订单需要使用物料限价,当有报价低于先前的价格时,在采购订单保存时,更新最低限价 BADI:ME_PROCESS_PO_CUST process~item里做限价 ...
- HDU4815
Little Tiger vs. Deep Monkey Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65535/65535 K ( ...
- cookie、 sessionStorage 、localStorage之间的区别和使用
1.cookie:存储在用户本地终端上的数据.有时也用cookies,指某些网站为了辨别用户身份,进行session跟踪而存储在本地终端上的数据,通常经过加密.一般应用最典型的案列就是判断注册用户是否 ...
- jar转dll
IKVM http://www.cnblogs.com/luckeryin/archive/2012/03/28/2421274.html
- [转]我来Hacking JDBC,你并不需要它
我们喜欢和JDBC打交道,以前从未有人这样说过.很严肃的说,JDBC是一个非常优秀的API.这可能是现在Java能够成为一个受欢迎的平台的重要原因之一. 在JDK1.1之前,ODBC出现之前(很久之前 ...
- spring MVC 详细入门
移步到这里:http://www.admin10000.com/document/6436.html
- 一道数学题 hduacm 5144
题目大意: 一直初速度v和抛出速度h 求标枪抛出的最远距离: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5144 显然 d=v/g*sqrt( ...
- 利用dispatch_once创建单例
无论是爱还是恨,你都需要单例.实际上每个iOS或Mac OS应用都至少会有UIApplication或NSApplication. 什么是单例呢?Wikipedia是如此定义的: 在软件工程中,单例 ...
- 使用 JavaScript 修改浏览器 URL 地址栏
现在的浏览器里,有一个十分有趣的功能,你可以在不刷新页面的情况下修改浏览器URL;在浏览过程中.你可以将浏览历史储存起来,当你在浏览器点击后退按钮的时候,你可以冲浏览历史上获得回退的信息,这听起来并不 ...
- VS2013的项目转到VS2010需要修改的
Visual Studio2013: 用的是.net FrameWork 4.5版本,自带Nuget(在里面可以搜索到各种引用插件,不用再自己一个个百度,就像X60软件管家) Visual Studi ...