C# 初入数组

 数组(数据类型):数组能存放多个同类型数据,数组长度不可改变。

Ⅰ、声明与赋值

  ①数组声明:数据类型[ ] 变量名;→→例:int[ ]  array;//此时只是一个声明这是个数组对象。

  ②赋值:给声明了的数组赋值→→变量名=new  数据类型[长度 ];→→例:array=new  int[5];//此时给数组赋值了个为5的长度,此时这里的[5]也称作下标或索引。

int [ ]str=new int[3]{"2","4","5"};第一种

int [ ]str={"3","5","9"};第二种,为最简便的创立一个数组。

int [] nums=new int[6];//这样只是创建了一个长度为6的数组,没有赋值

Ⅱ、数组初始化

①数字类型,初始化时所有值=0; ②bool初始化的值=false;  ③char 初始化值=\0;   ④string初始化值=null;

int [] nums=new int[6];
//创建了数组,但没赋值,此时数组内的所有元素都为0;

//创建长度为3的数组
int [] numbers=new int [3];
//给数组下标为0,的数组项赋值为6
numbers[0]=6;
//为numbers重新建立一个长度为2数组,相当于前面的数组就不用了
numbers=new int [2];
//新建立的数组为初始化,没有赋值,所以此时都为0
Console.Write(numbers[0]);//此时numbers[0]=0;

Ⅲ、数组项读取与修改

①读取:变量名[下标]

②修改(也叫赋值):变量名[ ]=值;→→array[1]=9;

Ⅳ、读取数据长度

变量名 . length;

注意: length为数组对象的一个属性。

    要获取数组最后一项值就是array[array.length-1];

//创建数组
int  [] array={"4","2","7"};
//i为array下标,array.length为数组长度
for  (int i=0;i<array.length;i++)
{
     Console,Write( array );   Console.WriteLine(array[array.length-1]);
}

数组定长性

一个数组创建后,他的长度固定不可变,数据适用于数据数量固定场景。

int [] array=new int [3];
array=new int [4];
//此时会觉得这不是长度改变了吗?其实不是。
//只是先定义了个长度为3的数组,再重新为array创建了一个长度为4的数组,所以之前的就废弃了,长度并没有发生改变

数组遍历

给数组重新赋值或求和或求乘积等都会运用遍历。

int [] array={"2","4","5"};
   for(int i=0;i<array.length;i++)
{
      Console.Write(array);
//输出一个数组项后输出空格隔开
 Console.Write("   ");

}

数组排序

①选择排序:

把第一位数字拿出来依次和后面每一位数字比较,比他大则不换位置,比他小则换位置,,不管换了几次都用第一位来比较,具有不稳定性

1-1. 使用任意的排序算法对数组进行排序,排序后,重新输出数组内容
var array=[6,8,5,2,2];
for (var i=0;i<array.length-1;i++){
for(var j=i+1;j<array.length;j++){
if(array[i]>array[j]){
var temp=array[i];
array[i]=array[j];
array[j]=temp;
}
}
}
Console.Write(array);

②冒泡排序

相邻两个数进行比较,谁小换前面,谁大换后面。冒泡排序具有稳定性。

1-1. 使用任意的排序算法对数组进行排序,排序后,重新输出数组内容
var array=[6,8,5,2,2];
//i为循环次数
for (var i=0;i<array.length-1;i++){
//j为array的下标
for(var j=0;j<array.length-1-i ;j++){
if(array[j]>array[j+1]){
var temp=array[j+1];
array[j+1]=array[j];
array[j]=temp;
}
}
}
Console.Write(array);

数组与集合

数组:能定长,用于保存固定数量的数据;占用内存少,遍历快。

集合:不定长,可改变长度。

集合类型:List 类型最常见。

①创建集合

定义:List<数据类型>变量名;

赋值:变量名=new  List <数据类型>();           例:List<int> nums=new  List<int>{3,6,8};

初始化:变量名=new List<数据类型>{元素1,元素2,元素3......元素n};

②操作:

添加元素:变量名 . add(要添加的数据);

插入元素:变量名 . Insert(索引,要插入的数据);

删除元素:变量名 . RemoveAt(索引); //根据索引删除

变量名 . Remove(数据);//根据数据删除

修改元素:变量名[索引]=值;

获取元素数量:变量名 . Count

【材料题】

1. 建立一个int类型的数组,变量名为nums,并使用初始化器给它的每一项赋值(随意赋一些值即可),然后完成下面的练习

 

Console.Write("请输入一个数组长度:");

int len = int.Parse(Console.ReadLine());

int[] nums=new int[len];

for (int i = 0; i < len; i++)

{

Console.Write("数组第" + (i + 1) + "组数据:");

nums[i] = int.Parse(Console.ReadLine());

}

for (int i = 0; i < nums.Length;i++ )

{

if (i < nums.Length - 1)

{

Console.Write(",");

}

Console.Write(  nums[i]);

}

1-1. 让用户输入一个下标和一个新的数字,修改数组对应下标的数字,若下标超出范围,要给出错误提示,并让用户重新输入

Console.Write("请输入一个下标");

int len = int.Parse(Console.ReadLine());

Console.Write("请输入一个新数字");

int num = int.Parse(Console.ReadLine());

int[] str = {2,3,6,3,1 };

if (len <= str.Length - 1)

{

str[len]=num;

Console.Write("正确");

}

else

{

Console.Write("超出范围");

}

1-2. 让用户输入一个要查找的数字,判断该数字在数组中是否存在

 int[] nums = {2,5,7,2,4
};

Console.Write("请输入一个数字:");

int ter = int.Parse(Console.ReadLine());

bool IsNuM = false;

for (int i = 0; i
< nums.Length;i++ )

{

if (nums[i] == ter)

{

IsNuM = true;

Console.WriteLine("存在过");

break;

}

}

if(IsNuM)

{

Console.Write("不存在");

}

1-5. 输出数组中所有的质数

int[]
nums = { 2, 4, 5, 7 };

// 遍历数组获得每一个元素

for (int i = 0;
i < nums.length; i++) {

//默认元素是质数

boolean
iszhishu = true;

//质数整除的范围2~(n-1)

for (int j
= 2; j < nums[i]; j++) {

//判断是否合数,是合数iszhishu就为false,终止当前循环

if
(nums[i] % j == 0) {

iszhishu
= false;

break;

}

}

//判断是否质数

if
(iszhishu) {

Console.Write(nums[i]
+ "是质数");

}

时间: 2024-07-28 17:58:54

C# 初入数组的相关文章

初入ES6随笔

初入ES6随笔 var c = a => console.log(a) let a1 = 1; //只在块儿状作用域生效的变量声明 const a2 = 1; //常量声明,值不可改变,快儿状作用域 解构赋值语法 let [a3, b3, c3] = [1, 2, 3]; //数组解构赋值 let [a4 = 0, ...b4] = [1, 2, 3, 4] //数组解构赋值 a4 = 1 b4 = [2,3,4] 允许默认值; let {a5, b5} = {a5: "1",

初入码田--ASP.NET MVC4 Web应用之创建一个空白的MVC应用程序

初入码田--ASP.NET MVC4 Web应用开发之一  实现简单的登录 初入码田--ASP.NET MVC4 Web应用开发之二 实现简单的增删改查 2016-07-29 再次之前,需要一台电脑(- ̄▽ ̄)-,以及Visual Studio 2013或者更高版本,SQL Sever数据库(暂时不用) 新建项目 下面会出现选择模板选项(我们选择的是MVC模板) 其中,在创建MVC模板时会有身份验证选项.可选择添加的文件夹和核心引用(Web Form和Web API)以及单元测试选项 身份验证分

0x00linux32位汇编初入--前期准备

0x00汇编初入--前期准备 一.汇编工具 在linux平台下常用的编译器为as,连接器为ld,使用的文本编辑器为vim,汇编语法为att 以下是一些工具: addr2line 把地址转换为文件名和行号 ar 创建,修改和展开文件存档 as 汇编器 c++filt 还原c++符号过滤器 gprof 显示程序简档信息 ld 把目标代码文件链接 nlmconv 把目标代码转换为Netware loadable Module格式 nm 列出目标文件中的符号 objcopy 复制和翻译目标文件 objd

初入树莓派1----安装系统+进入SSH

为了更好的从事程序员事业.填坑linux.为学弟打下第一手资料.留下linux培训教材-- -------实际就是为了搭个路由器///玩玩.... 入了树莓派3b +电源+外壳+sd卡---300大洋--------肉疼 树莓派3b的耗电量还是挺大的推荐买个2A以上的电源. ////////////////////////////////////分割线/////////////////////////////////////////// 树莓派系统安装+进入命令行 树莓派支持 数十款操作系统 一

初入&#39;C&#39;,以做一个例题有感。

题目:写一个函数返回参数二进制中 1 的个数 方法1: 我自己写的,运用'%'和'/',感觉挺简单的. int count_one_bit(int num) { unsigned int count=0; while(num) { if(num%2==1) count++; num=num/2; } return count; } int main() { int n = 0; int count = 0; scanf("%d", &n); count = count_one_

初入前端,面对一个项目应注意哪些?

前言: 对于初入职场的前端小白来说,一整个项目来了,顿时感觉压力山大,张皇失措,也总会感到手忙脚乱.其实不用怕,拆分步骤,把每个步骤做好,做细,一切都迎刃而解,犹如顺藤摸瓜般畅快淋漓. 目录: 概念的介绍(可略) 项目分哪几个阶段(每个阶段注意什么) 如何排期 解决问题的方法 概念的介绍: PM(产品经理)负责需求的提出和项目的引导.PM根据产品特点和发展目标提出一定的需求,并协调各方资源投入开发.若需求层面有不清晰的地方,应当向PM沟通确认,如:需要做什么.希望达到什么效果.哪些内容应重点保证

致初入职场的兄弟姐妹

致初入职场的兄弟姐妹   我很喜欢电影<燃情岁月>中的那句台词--"有些人能够听见自己内心的声音,非常的清楚,他们依循着自己的内心来行事.这些人变得疯狂,或者成为传奇--"(Some people hear their own inner voices with great clearness and they live by what they hear. Such people become crazy, or they become legends. )     这是

从prompt输入10个人的年龄放入数组,将十个人的年龄求总和。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Typ

OC--有这么一个 整数 123456789,如何将这个整数的每一位数,从末位开始依次放入数组中,并遍历 倒序输出字符串

有这么一个 整数 123456789,如何将这个整数的每一位数,从末位开始依次放入数组中,并遍历 1 NSInteger num=123456789; 2 NSString *str=[[NSString alloc]initWithFormat:@"%ld",num ]; 3 NSMutableArray *arr=[NSMutableArray array]; 4 for(NSInteger i=str.length-1;i>=0;i--){ 5 //从末位开始截取字符串,每