数组定义

定义数组并赋值

int[] scores = { 45, 56, 78, 98, 100 };     //在定义数组时赋值
for(int i = 0; i < scores.Length; i++)
{
Console.WriteLine(scores[i]);
}

定义数组不赋值

string[] stuNames = new string[3];
stuNames[0] = "jame";
stuNames[1] = "max";
stuNames[2] = "joe";

一维数组应用

求数组的和

int[] nums = new int[] { 23, 67, 35, 24, 67 };
int sum = 0;
for(int i = 0; i < nums.Length; i++)
{
sum += nums[i];
}
Console.WriteLine("数字之和为:{0}",sum);

倒序输出

int[] intNums = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
for(int i = intNums.Length - 1; i >= 0; i--)
{
Console.WriteLine(intNums[i]);
}

求最大值最小值

int[] intN = { 23, 67, 35, 24, 67 };
int max = intN[0];
int min = intN[0];
for (int i = 0; i < intN.Length; i++)
{
if (max < intN[i])
{
max = intN[i];
}
if (min > intN[i])
{
min = intN[i];
}
}
Console.WriteLine("最大值:{0} 最小值:{1}", max, min);

在原有数组中新增

int[] arrS = new int[4] { 12, 13, 14, 15 };
int[] tmp = new int[arrS.Length + 1]; //新增一个数据
for(int i = 0; i < arrS.Length; i++)
{
tmp[i] = arrS[i];
}
Console.WriteLine("输入新增的数据");
int addNum = Convert.ToInt32(Console.ReadLine());
tmp[tmp.Length - 1] = addNum;
arrS = tmp;
Console.WriteLine("输出新的数据:");
for(int i = 0; i < arrS.Length; i++)
{
Console.WriteLine(arrS[i]);
}

新增与删除操作

删除数组中的一个元素

原理:

1.找出删除元素索引

2.索引前的元素直接赋值到临时数组中,索引后的数组在原有数组后索引+1后赋值

int[] arrS = new int[4] { 12, 13, 14, 15 };
Console.WriteLine("请输入你要删除的元素");
int getNum = Convert.ToInt32(Console.ReadLine());
int getIndex = -1;
for(int i = 0; i < arrS.Length; i++)
{
if (getNum == arrS[i])
{
getIndex = i;
break;
}
}
if (getIndex >= 0)
{
int[] tmp = new int[arrS.Length - 1];
for(int i = 0; i < tmp.Length; i++)
{
if (i >= getIndex)
{
tmp[i] = arrS[i + 1];
}
else
{
tmp[i] = arrS[i];
}
}
arrS = tmp;
Console.WriteLine("删除后的数据:");
for(int i = 0; i < arrS.Length; i++)
{
Console.WriteLine(arrS[i]);
}
}
else
{
Console.WriteLine("你所删除的元素不存在!");
}

C#基础-数组的更多相关文章

  1. 【搬砖】安卓入门(4)- Java开发编程基础--数组

    05.01_Java语言基础(数组概述和定义格式说明)(了解) A:为什么要有数组(容器) 为了存储同种数据类型的多个值 B:数组概念 数组是存储同一种数据类型多个元素的集合.也可以看成是一个容器. ...

  2. PHP基础 数组函数 的总结

    <?php /** * PHP基础 数组操作函数 * * 指针函数:[类似于数据库的游标] 见例1.1 * current($arr)/pos 返回当前指针指向的元素 * key($arr) 返 ...

  3. Java基础——数组应用之StringBuilder类和StringBuffer类

    接上文:Java基础——数组应用之字符串String类 一.StringBuffer类 StringBuffer类和String一样,也用来代表字符串,只是由于StringBuffer的内部实现方式和 ...

  4. java基础-数组的折半查找原理

    java基础-数组的折半查找原理 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 如果让你写一个数组的查找功能,需求如下:在一个数组中,找一个元素,是否存在于数组中, 如果存在就返回 ...

  5. Java基础-数组常见排序方式

    Java基础-数组常见排序方式 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 数据的排序一般都是生序排序,即元素从小到大排列.常见的有两种排序方式:选择排序和冒泡排序.选择排序的特 ...

  6. day05<Java语言基础--数组>

    Java语言基础(数组概述和定义格式说明) Java语言基础(数组的初始化动态初始化) Java语言基础(Java中的内存分配以及栈和堆的区别) Java语言基础(数组的内存图解1一个数组) Java ...

  7. Java语言基础(数组)

    Java语言基础(数组概述和定义格式说明) A:为什么要有数组(容器) 为了存储同种数据类型的多个值 B:数组概念 数组是存储同一种数据类型多个元素的集合.也可以看成是一个容器. 数组既可以存储基本数 ...

  8. 算法与数据结构基础 - 数组(Array)

    数组基础 数组是最基础的数据结构,特点是O(1)时间读取任意下标元素,经常应用于排序(Sort).双指针(Two Pointers).二分查找(Binary Search).动态规划(DP)等算法.顺 ...

  9. Java编程基础——数组和二维数组

    Java编程基础——数组和二维数组 摘要:本文主要对数组和二维数组进行简要介绍. 数组 定义 数组可以理解成保存一组数的容器,而变量可以理解为保存一个数的容器. 数组是一种引用类型,用于保存一组相同类 ...

  10. 《Java基础——数组的定义与使用》

    Java基础--数组的定义与使用       一. 一维数组: 格式一: 数组类型 数组变量[]=new 数据类型[长度]; //需要后续赋值,且后续赋值时只能为单个元素赋值. 或 数组类型 数组变量 ...

随机推荐

  1. CC11:链表分割

    题目 编写代码,以给定值x为基准将链表分割成两部分,所有小于x的结点排在大于或等于x的结点之前 给定一个链表的头指针 ListNode* pHead,请返回重新排列后的链表的头指针.注意:分割以后保持 ...

  2. AtCoder Regular Contest 075 2017年6月4日 C、D、E题解

    http://arc075.contest.atcoder.jp/assignments 昨晚做的atcoder,今天写个简单题解. F题不会做,800point的,就跪了,要等zk大佬来做.zk能做 ...

  3. Storm概念学习系列之并行度与如何提高storm的并行度

    不多说,直接上干货! 对于storm来说,并行度的概念非常重要!大家一定要好好理解和消化. storm的并行度,可以简单的理解为多线程. 如何提高storm的并行度? storm程序主要由spout和 ...

  4. BeanCopier使用说明

    BeanCopier从名字可以看出了,是一个快捷的bean类复制工具类. 一 如何使用,我就直接丢代码了 public class BeanCopierTest { static SimpleDate ...

  5. 值类型 VS 引用类型~

    问     题 值  类  型 引 用 类 型 这个类型分配在哪里? 分配在栈上 分配在托管堆上 变量是怎么表示的? 值类型变量是局部复制 引用类型变量指向被分配得实例所占的内存 基类型是什么? 必须 ...

  6. P4874 回形遍历 —模拟

    思路: 写完后信心满满,结果超时. 我很不解,下了个数据结果——,z竟然是大于1e10的,跟题目给的不一样啊 原来如此,正解是一行一行的走的... 注意当到两边一样近时,应优先向下和右!!!!!! 这 ...

  7. Jquery使用ajax参数详解

    记录一下  Jquery使用ajax(post.get及参数详解) 1.get: $.ajax({ type: "GET", url: baseUrl + "Showco ...

  8. nodejs 实践:express 最佳实践(八) egg.js 框架的优缺点

    nodejs 实践:express 最佳实践(八) egg.js 框架的优缺点 优点 所有的 web开发的点都考虑到了 agent 很有特色 文件夹规划到位 扩展能力优秀 缺点 最大的问题在于: 使用 ...

  9. 第二十章 排查和调试Web程序 之 设计异常处理策略

    1. 概述 本章内容包括: 多层架构中的异常处理.使用global.asax 或 自定义的HttpHandler 或 web.config中的属性来显示特定的错误页.处理 first chance 异 ...

  10. 编译安装php容易出现的问题以及解决办法

    http://crybit.com/20-common-php-compilation-errors-and-fix-unix/