数组定义

定义数组并赋值

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. shell编程 条件判断式----利用 case ..... esac 判断

    条件判断式----利用 case ..... esac 判断 case  $变量名称 in   <==关键词为 case ,还有变量前有钱字号 "第一个变量内容")   &l ...

  2. c#基础 path 类的各种套路

    string str = @"C:\3000soft\Red Spider\Data\Message\老赵.wav"; //获得文件名 Console.WriteLine(Path ...

  3. 在Unity3d中解析Lua脚本的方法

    由于近期项目中提出了热更新的需求,因此本周末在Lua的陪伴下度过.对Lua与Unity3d的搭配使用,仅仅达到了一个初窥门径的程度,记录一二于此.水平有限,欢迎批评指正. 网络上关于Lua脚本和Uni ...

  4. AJPFX总结Java 类加载器

    顾名思义,类加载器(class loader)用来加载 Java 类到 Java 虚拟机中.一般来说,Java 虚拟机使用 Java 类的方式如下:Java 源程序(.java 文件)在经过 Java ...

  5. Myeclipse连接数据库删除数据库(JDBC)

    package com.test.jdbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.Pr ...

  6. ECSHOP 商品增加新字段的方法

    在ecshop二次开发工作中,经常碰到一些ECSHOP高级使用者问我,如何给商品增加一个新字段,来录入一些新的内容. 下面我们结合ecshop后台“商品编辑”.“商品录入”来谈谈如何给ecshop商品 ...

  7. Linux命令-4类

    一.系统管理与维护   1. pwd:print working directory    打印工作目录   2. cd:  change directory    改变或进入路径       ● c ...

  8. MFC CDialog/CDialogEx DoModal ALT

    Questions: I'm using MFC CDialog/CDialogEx to show a modal dialog with DoModal.usually it works with ...

  9. SpringMVC+Thymeleaf 简单使用

    一.简介 1.Thymeleaf 在有网络和无网络的环境下皆可运行,而且完全不需启动WEB应用,即它可以让美工在浏览器查看页面的静态效果,也可以让程序员在服务器查看带数据的动态页面效果.浏览器解释 h ...

  10. linux下杀毒工具clamav

    ClamAV 杀毒是Linux平台最受欢迎的杀毒软件,ClamAV属于免费开源产品,支持多种平台,如:Linux/Unix.MAC OS X.Windows.OpenVMS.ClamAV是基于病毒扫描 ...