20 如何在C#中存一批数据,数组
使用软件的一个重要原因,是因为软件可以帮我们重复处理很多事情。在前面我们已经讲到了循环。循环就是为了重复处理一个事情。那么我们有没有想过,我们要重复处理的一批数据怎么在程序里存放呢?
举个例子吧。
我们有一个通讯录的程序,需要保存通讯录中的所有名字。我们可以这样做。
string name1=”David 老师”;
string name2=”宝贝”;
string name3=”老妈”;
。
。
。
string name300=”前女友”;
假设这个通讯录中有300个名字,那么我们就定义三百个变量来存储它们。好麻烦呢!数组在这个时候就响应人们的迫切需要,诞生了。在软件领域,很多的技术产生的原因,是因为背后有需要。数组是这样,软件产品也一样。一个成功的软件产品,是因为背后有大量的需求。谁解决的好,解决的早,谁就有可能更加成功。
定义和初始化数组
数据类型 [] 数组名字 = new 数据类型[n];
继续上边的例子。我们来定义一个数组name,然后把这个数组初始化,可以保存300个字符串。
String [] name = new string [300];
数组成员的访问:
数组需要先定义和初始化后才能访问,访问数组中的成员可以使用索引器进行访问。什么是索引器?就是在方括号里边写上整数,[序号]。注意一点,数组中成员的序号是从0开始的。
例如要给通讯录中的第一个名字和第二个名字,第三个名字和最后一个名字赋值。
name[0]=”Thinking Jiang 老师”;
name[1]=”宝贝”;
name[2]=”老妈”;
。
。
。
name[299]=”前女友”;
注意一点,数组中成员的序号是从0开始的。所以第一个名字就是name[0],而不是name[1].最后一个名字就是name[299]而不是name[300].
通常在程序中处理数组,都是用循环来做的。我们接下来开一个具体的例子,帮助大家理解。
你创建一个项目。解决方案名称为Sloution20,项目名称为Exercise20,项目类型为控制台程序。点击Program.cs. 在里边加入这些代码。

简单对这段代码进行一些讲解,方便大家的理解。
1. 第13行定义了一个整数型数组number,并把它初始化为存放5个整数
2. 16行-20行让用户随机输入5个整数,将他们依次存放在number数组中。
3. 21行-33行将这个数组排序,使用的是冒泡排序法。这就是传说中的算法。在这里边还使用了嵌套的循环。嵌套循环就是在循环中可以再使用循环。内层循环整个循环一遍后,外层循环才开始下一个循环。
4. 34行-38行将排序后的结果输出。
运行结果

练习
1. 读懂这段代码,为重要的语句加上注释。实在搞不明白的话,可以联系我哦。
2. 如果定义了一个数组 int[] number= new int [5],可以往里边存放6个整数吗?试着存一下,看看是什么结果。
3. 修改程序,让用户可以输入6个小数,然后按照从大到小的顺序输出。
4. 试着写一个三种循环的嵌套,搞明白嵌套循环的含义
付费解答C#入门学习过程中碰到的各种问题。
零基础学习C#入门,大多数的问题都可以通过自学或借助互联网解决。
但是还是会有一些问题,不是那么容易解决,成为了你学习的绊脚石。最后甚至造成你学习的半途而废。通常学习C#编程入门,你会遇到20到30多个你不能很容易解决的问题。
这个时候,你最需要什么呢?
对!一个专业的老师给你帮助!
你在学习本课程中,遇到任何问题都可以通过qq或email想本教程作者进行求助。
只需30元,你就可以得到本教程作者的三次专业解答。所以你只需不到300元就可以顺利的完成C#入门,从此推开软件行业的大门。
付费方式非常简单:
用微信扫描下面的二维码。在付款留言中留下你的qq号或email地址就可以啦。

教育不是要便宜,而是要可靠!真正聪明的人,更懂得花钱让专业的人为自己服务,提高自己的效率。
老师qq:2040227296
老师email:2040227296@qq.com
20 如何在C#中存一批数据,数组的更多相关文章
- Electron-vue实战(三)— 如何在Vuex中管理Mock数据
Electron-vue实战(三)— 如何在Vuex中管理Mock数据 作者:狐狸家的鱼 本文链接:Vuex管理Mock数据 GitHub:sueRimn 在vuex中管理mock数据 关于vuex的 ...
- 如何在JavaScript中手动创建类数组对象
前言 关于什么是js的类数组对象这里不再赘述.可以参考这个链接,还有这里. js中类数组对象很多,概念简单的讲就是看上去像数组,又不是数组,可以使用数字下标方式访问又没有数组方法. 例: argume ...
- 如何在C中传递二维数组作为参数?
回答: 在C语言中,有很多方法可以将2d数组作为参数传递.在下面的部分中,我描述了将2d数组作为参数传递给函数的几种方法. 使用指针传递2d数组以在c中运行 多维数组的第一个元素是另一个数组,所以在这 ...
- 如何在spark中读写cassandra数据 ---- 分布式计算框架spark学习之六
由于预处理的数据都存储在cassandra里面,所以想要用spark进行数据分析的话,需要读取cassandra数据,并把分析结果也一并存回到cassandra:因此需要研究一下spark如何读写ca ...
- 如何在Python中处理不平衡数据
Index1.到底什么是不平衡数据2.处理不平衡数据的理论方法3.Python里有什么包可以处理不平衡样本4.Python中具体如何处理失衡样本印象中很久之前有位朋友说要我写一篇如何处理不平衡数据的文 ...
- 如何在MySQL中查询当前数据上一条和下一条的记录
如果ID是主键或者有索引,可以直接查找: 方法一: 查询上一条记录的SQL语句(如果有其他的查询条件记得加上other_conditions以免出现不必要的错误): select * from tab ...
- 如何在C++中使用动态三维数组
目录 1. 使用new和delete来构造 2. 使用malloc和free来构造 3.构造函数来生成数组 1. 使用new和delete来构造 在使用new申请内存时,在使用过后,一定要采用dele ...
- 七、如何在Java中高效检查一个数组是否含有一个值
如何检查一个数组(非排序的)是否包含特定的值.这是个非常有用或经常被在Java中使用.这是个在Stack Overflow中高得票的问题.在已经高得票的答案中,有许多不同的处理方法,但是时间的复杂度非 ...
- 如何在MyEclipse中通过hibernate使用jtds驱动连接数据库,并向数据库添加数据的方法
最近学习了下如何在MyEclipse中通过hibernate使用jtds驱动连接数据库,并向数据库添加数据的方法,虽然MyEclipse中自带了连接数据库的方法,我也尝试了下其他方法,如有不当之处请指 ...
随机推荐
- [bzoj1485][HNOI2009]有趣的数列_卡特兰数_组合数
有趣的数列 bzoj-1485 HNOI-2009 题目大意:求所有1~2n的排列满足奇数项递增,偶数项递增.相邻奇数项大于偶数项的序列个数%P. 注释:$1\le n\le 10^6$,$1\le ...
- hdu4701 Game(递推博弈)
题意: Alice初始有A元,Bob有B元. 有N个物品,第i个物品价值为Ci.Alice和Bob轮流买一些(>=1)物品.不能移动的人输.购买有一个限制,对于第1 个之后物品,只有当第i-1个 ...
- Mybatis中的ognl表达式。及myabtis where标签/if test标签/trim标签
1.mybatis默认支持使用ognl表达式来生成动态sql语句 MyBatis中可以使用OGNL的地方有两处: 动态SQL表达式中 ${param}参数中 上面这两处地方在MyBatis中处理的时候 ...
- IE網址欄快速輸入網址,“Ctrl+Enter”補齊“.com”
繁體中文Windows,預設 IE 在網址列輸入 abc,然後按 Ctrl+Enter ,會跳到www.abc.com.tw, 但較常用的連結是www.abc.com,如何修改这一設定呢? 可以透過修 ...
- MyEclipse 8.5安装Aptana
Aptana简单介绍 Aptana是一个很强大,开源,专注于JavaScript的Ajax开发IDE它的特性包含: 1.JavaScript,JavaScript函数,HTML,CSS语言的Co ...
- linux网络结构体
一 链路层: (1)局域网(以太网ethernet): *struct eth_header:以太网头部. (ethernet/eth.c) *struct net_device:每一个网络设备都用这 ...
- SDUTOJ 2476Period
#include<iostream> #include<string.h> #include<stdio.h> #define N 1000010 using na ...
- CodeForces484A Bits(贪心)
CodeForces484A Bits(贪心) CodeForces484A 题目大意:给出范围[A.B].期望你给出某个数X满足X属于[A,B],而且X转成二进制的1的个数最多.假设有多个给出最小的 ...
- 本地调用jni之VC++无法导入问题
事实上非常easy,无法导入头文件就自己新建呗 1. 首先编写java代码 class Vrv { public native void printVersion(); static { System ...
- CI 知识 :Git介绍及常用操作
Git介绍 Git(读音为/gɪt/.)是一个开源的分布式版本控制系统,可以有效.高速的处理从很小到非常大的项目版本管理. Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发 ...