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 ...
随机推荐
- maven install 时提示“程序包 javax.crypto不存在”
但是javax.crypto是在jdk的jre\lib目录下的 解决方案: <compilerArguments> <bootclasspath>${java.home}/li ...
- 深入理解ServletRequest与ServletResponse
请求和相应是Web交互最基本的模式,在Servlet中,分别用HttpServletRequest与HttpServletResponse来表示Http请求和响应.这两个类均来自javax.se ...
- 最小生成树练习3(普里姆算法Prim)
风萧萧兮易水寒,壮士要去敲代码.本女子开学后再敲了.. poj1258 Agri-Net(最小生成树)水题. #include<cstdio> #include<cstring> ...
- div中的字符换行
div中的字符换行 转载自:http://blog.sina.com.cn/s/blog_6a79bc480100tizi.html 1.强制不换行,同时以省略号结尾. <div style ...
- C#入门篇6-8:字符串操作 深入研究字符串的内存驻留机制
//字符串的内存驻留机制 public static void Test() { //当有多个字符串变量包含了同样的字符串实际值时, //CLR可能不会为它们重复地分配内存,而是让它们统统指向同一个字 ...
- Jsp页面中使用fckeditor控件的两种方法 [转]
fckeditor控件请到官方网站下载http://www.fckeditor.net,本例主要用到FCKeditor_2.6.3.zip.fckeditor-java-demo-2.4.1.zip. ...
- 当进入log文件后就卡机
问题:一个目录打开,终端就卡死不动了 Ctrl+c也没用,cat一样没用? 解决办法:用的时间或用的数量删除(时间已经否决掉) ls -t |tail -1000 |xargs rm 原因: log ...
- mysql 远程连接速度慢的解决方案
PHP远程连接MYSQL速度慢,有时远程连接到MYSQL用时4-20秒不等,本地连接MYSQL正常,出现这种问题的主要原因是,默认安装的MYSQL开启了DNS的反向解析,在MY.INI(WINDOWS ...
- Android 4.3正式发布:四大新功能一览
在旧金山举行的新品发布会上,Google正式发布了Android 4.3,代号仍为“Jelly Bean”.此次更新并没有太大改变,只是紧跟4.1.4.2步伐, 新增了低功耗蓝牙.多用户登录等一系列功 ...
- 一模 (1) day1
第一题:(水题) 题目大意:求出n个 X% (X是小于等于2位的整数) 的乘积,去掉末尾的0: 解题过程: 1.直接 把整数乘好,然后确定小数点的位置,去掉多余的0 输出即可. 第二题:(搜索题) ...