C# 二维数组和集合
本次课我主要学习了二维数组和集合的部分内容。
在二维数组的部分中,我主要学习了二维数组的定义方法:int [,] array=new int [4,2];做了一个小练习:用二维数组打印自己的姓氏。
string[,] a = new string[11, 9]
                {
                    {"  ","  ","  ","  ","■","  ","  ","  ","  "},
                    {"  ","  ","  ","  ","■","  ","  ","  ","  "},
                    {"  ","■","■","■","■","■","■","■","  "},
                    {"  ","  ","  ","■","■","■","  ","  ","  "},
                    {"  ","■","■","  ","■","  ","■","■","  "},
                    {"  ","  ","■","■","■","■","■","  ","  "},
                    {"  ","  ","  ","  ","  ","■","  ","  ","  "},
                    {"■","■","■","■","■","■","■","■","■"},
                    {"  ","  ","  ","  ","■","  ","  ","  ","  "},
                    {"  ","  ","  ","■","■","  ","  ","  ","  "},
                    {"  ","  ","  ","  ","■","  ","  ","  ","  "},                       
                };
            for (int i = 0; i < 11; i++)
            {
                for (int j = 0; j < 9; j++)
                {
                    Console.Write(a[i, j]);
                }
                Console.WriteLine();
            }
            Console.ReadLine();
然后,我学习了一个split() 分离
例:
一次性接收姓名、年龄、工作单位
            Console.Write("请输入您的姓名、年龄、工作单位(**-**-**):");
            string quan = Console.ReadLine();
            string[] array = quan.Split('-');
            for (int i = 0; i < array.Length; i++)
            {
                Console.WriteLine(array[i]);
            }
            Console.ReadLine();
学习完二维数组的内容,我开始学习了集合的部分内容。
ArrayList al = new ArrayList();//初始化
            al.Add(5);
            al.Add(3);
            al.Add(6);
            al.Add(4);
            al.Add(1);
            al.Add(2);
            al.Add("2");
            al.Add("hello");
            al.Add(true);
            al[3] = "你好";
            al.Clear(); 移除所有元素
            ArrayList al1 = new ArrayList();
al1 = (ArrayList)al.Clone();//克隆
            //判断是否包含
            Console.WriteLine(al1.Contains("2"));
            //获取第一次出现该元素的索引号
            Console.WriteLine(al1.IndexOf(11));
            //获取最后一次出现该元素的索引号
            Console.WriteLine(al1.LastIndexOf(2));
            //插入某个索引位置某个元素
            al.Insert(2,"Hello");
//移除某个第一次出现的元素
            al.Remove("hello");
            //移除某个索引位置的元素
            al.RemoveAt(3);
al.Sort();//排序 ,升序
            al.Reverse();//翻转整个集合
            Console.WriteLine(al[2]);
            Console.WriteLine(al.Count);
            Console.ReadLine();
在学习了集合的基本知识之后,我做了一个综合性的题目来对我所学习的内容加以巩固。
例:输入班级人数,输入每个人的姓名、语数英成绩进入集合;求语文的总分,数学的平均分,英语的最高分的人的姓名及所有科目的分数(冒泡排序)
0     姓名  4   8  12
    1     语文成绩5   9  13
    2     数学成绩6   10  14
    3     英语成绩7   11  15
Console.Write("请输入班级人数:");
int n = int.Parse(Console.ReadLine());
double yu = ;
double shu = ;
ArrayList al = new ArrayList();
for (int i = ; i < n; i++)
{
Console.Write("请输入第{0}个人的姓名:",i+);
al.Add(Console.ReadLine());
Console.Write("请输入第{0}个人的语文成绩:",i+);
al.Add(double.Parse(Console.ReadLine()));
yu += double.Parse(al[al.Count - ].ToString());
Console.Write("请输入第{0}个人的数学成绩:", i + );
al.Add(double.Parse(Console.ReadLine()));
shu += double.Parse(al[al.Count - ].ToString());
Console.Write("请输入第{0}个人的英语成绩:", i + );
al.Add(double.Parse(Console.ReadLine()));
}
Console.WriteLine("所有信息输入完毕,请按回车键继续!");
Console.ReadLine();
Console.WriteLine("语文的总分是:"+yu);
Console.WriteLine("数学的平均分是:"+(shu/n));
for (int i = ; i < *n-; i+=)
{
for (int j = i; j <  * n - ; j += )
{
if (double.Parse(al[i].ToString()) < double.Parse(al[j + ].ToString()))
{
//换姓名
object zhong = al[i - ];
al[i - ] = al[j + ];
al[j + ] = zhong;
//换语文
zhong = al[i - ];
al[i - ] = al[j + ];
al[j + ] = zhong;
//换数学
zhong = al[i - ];
al[i - ] = al[j + ];
al[j + ] = zhong;
//换英语
zhong = al[i];
al[i] = al[j + ];
al[j + ] = zhong;
}
}
}
Console.WriteLine("英语最高分的学生是{0},英语分数是{1},语文分数是{2},数学分数{3}",al[],al[],al[],al[]);
Console.ReadLine();
C# 二维数组和集合的更多相关文章
- C#(二维数组/集合)
		
一.二维数组int [,] array = new int[5,3];//有五个一维数组,每一个一维数组有3个元素 /打印出来一个“王”这个字string[,] wang = new string[, ...
 - PHP 如何获取二维数组中某个key的集合(高性能查找)
		
分享下PHP 获取二维数组中某个key的集合的方法. 具体是这样的,如下一个二维数组,是从库中读取出来的. 代码: $user = array( 0 => array( 'id' => 1 ...
 - PHP 获取二维数组中某个key的集合
		
本文为代码分享,也是在工作中看到一些“大牛”的代码,做做分享. 具体是这样的,如下一个二维数组,是从库中读取出来的. 代码清单: $user = array( 0 => array( 'id' ...
 - 二维数组,锯齿数组和集合  C# 一维数组、二维数组(矩形数组)、交错数组(锯齿数组)的使用  C# 数组、多维数组(矩形数组)、锯齿数组(交叉数组)
		
二维数组,锯齿数组和集合 一.二维数组 二维数组:一维数组----豆角二维数组----表格 定义:1.一维数组:数据类型[] 数组变量名 = new 数据类型[数组长度];数据类型[] 数组变量名 = ...
 - PHP使用array_filter查找二维数组中符合字段和字段值的数据集合
		
1.方法: /** * 获取符合字段和字段值的数组集合 * @param array $data 待过滤数组 * @param string $field 要查找的字段 * @param $value ...
 - php获取二维数组中某一列的值集合
		
$result //二维数组$uid_list = array_column($result, 'uid');
 - ***php解析JSON二维数组字符串(json_decode函数第二个参数True和False的区别)
		
客户端的请求体中的数据:[{"msg_id": 1, "msg_status": "HAS_READ" }, { "msg_id& ...
 - Android 在资源文件(res/strings.xml)定义一维数组,间接定义二维数组
		
经常我们会在资源文件(res/strings.xml)定义字符串,一维数组,那定义二维数组?直接定义二维数组没找到,可以间接定义. 其实很简单,看过用过一次就可以记住了,一维数组估计大家经常用到,但是 ...
 - 数组(Array),二维数组,三维数组
		
数组(Array):相同类型数据的集合就叫做数组. (一)定义数组的方法: A) type[] 变量名 = new type[数组中元素的个数] 例如: int[] a = new int[10] ; ...
 
随机推荐
- line-height属性详解
			
line-height属性详解:http://www.cnblogs.com/dolphinX/p/3236686.html
 - hibernate中的sql语句
			
hibernate的hql查询语句总结 在这里通过定义了三个类,Special.Classroom.Student来做测试,Special与Classroom是一对多,Classroom与Stud ...
 - 【NOIP2013提高组】货车运输
			
货车运输 (truck.cpp/c/pas) [问题描述] A国有n座城市,编号从1到n,城市之间有m条双向道路.每一条道路对车辆都有重量限制,简称限重.现在有q辆货车在运输货物,司机们想知道每辆 ...
 - 【Python】使用多个迭代器
			
如果要达到多个迭代器的效果,__iter__()只需替迭代器定义新的状态对象,而不是返回self class SkipIterator: def __init__(self, wrapped): se ...
 - [Q]图框识别问题
			
一个CAD文件可能包含很多张(页)图,每张图通常包含在一个图框里,这个图框通常是矩形的. 打图精灵识别图框所在区域,然后打印该区域,打图精灵识别图框实际上是识别最外侧的矩形(无矩形打印见下文) 如A矩 ...
 - 【小技巧】C#判断电脑是否联网
			
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
 - mybatis处理特殊符号
			
当我们需要通过xml格式处理sql语句时,经常会用到< ,<=,>,>=等符号,但是很容易引起xml格式的错误,这样会导致后台将xml字符串转换为xml文档时报错,从而导致程序 ...
 - PhotonServer 学习
			
版本:Photon-OnPremise-Server-SDK_v3-4-31-10808 输出文件夹:deploy/名称/bin PhotonServer.config 配置 <Applicat ...
 - 解题报告8VC Venture Cup 2017 - Elimination Round
			
题目链接:http://codeforces.com/contest/755 本蒟蒻做了半天只会做前两道题.. A. PolandBall and Hypothesis 题意:给出n,让你找出一个m, ...
 - 分布式版本控制系统Git-----4.Git 常用命令整理
			
1. git init 初始化 git 目录 2. git add 添加文件 git add fileName #添加指定文件 git add -i #手工选择要添 ...