C#で配列を定義し、単純なソートアルゴリズムで実装します.
3593 ワード
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApp20110730
{
class Program
{
static void Main(string[] args)
{
int n = 18;
int[] a = new int[18]{ 0,1,2,3,4,5,0,1,2,3,4,5,0,1,2,3,4,5};
int[] b = new int[18] { 0, 1, 2, 3, 4, 5, 0, 1, 2, 3, 4, 5, 0, 1, 2, 3, 4, 5 };
Console.WriteLine(" :");
Console.WriteLine(" A【18】:");
foreach (var item in a)
{
Console.Write(item);
}
Console.WriteLine("");
Console.WriteLine(" A【18】 。");
Console.WriteLine(" B【18】:");
foreach (var item in b)
{
Console.Write(item);
}
Console.WriteLine("");
Console.WriteLine(" B【18】 。");
Console.WriteLine(" 。。。。");
Sort(n,a,b);
Console.WriteLine(" 。");
Console.WriteLine(" :");
Console.WriteLine(" A【18】:");
foreach (var item in a)
{
Console.Write(item);
}
Console.WriteLine("");
Console.WriteLine(" A【18】 。");
Console.WriteLine(" B【18】:");
foreach (var item in b)
{
Console.Write(item);
}
Console.WriteLine("");
Console.WriteLine(" B【18】 。");
}
private static void Sort(int n, int[] a, int[] b)
{
try
{
int r = 6;
int[] R = new int[r];
for (int i = 0; i < r; i++)
{
R[i] = 0;
}
for (int i = 0; i < n; i++)
{
R[a[i]] = R[a[i]] + 1;
}
for (int i = 1; i < r; i++)
{
R[i] = R[i] + R[i - 1];
}
for (int i =(n-1); i >= 0; i--)
{
b[R[a[i]] - 1] = a[i];
R[a[i]] = R[a[i]] - 1;
}
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
}
}
}
C#で定義する配列
一、一次元:
int[] numbers = new int[]{1,2,3,4,5,6};//不定長
int[] numbers = new int[3]{1,2,3};//ていちょう
二、多次元
int[,] numbers = new int[,]{{1,2,3},{1,2,3}};//不定長
int[,] numbers = new int[2,2]{{1,2},{1,2}};//ていちょう
三、例
A:int[] mf1=new int[6];
//配列の範囲を初期化したり、初期値を指定したりすることに注意//6つの要素を含む1次元整数配列、初期値1,2,3,4,5,6
int[] mf2=new int[6]{1,2,3,4,5,6};
B://1次元文字列配列初期値設定項目が指定されている場合はnew演算子を省略することもできます
string[] mf3={"c","c++","c#"};
C://1 Dオブジェクト配列
Object[] mf4 = new Object[5] { 26, 27, 28, 29, 30 };
D://2次元整数配列、初期値mf 5[0,0]=1、mf 5[0,1]=2、mf 5[1,0]=3、mf 5[1,1]=4
int[,] mf5=new int[,]{{1,2},{3,4}};
E://6*6の2 D整数配列
int[,] mf6=new mf[6,6];
四、配列要素の個数を取得する:
int b;
b = sizeof (a)/sizeof (*a);