一、数组:
1.一维数组:
声明语法:数据类型[] 数组名;
例:
int[] array;
初始化语法:
int[] array=new int[5]{0,1,2,3,4};
int[] arr1=new int[]{0,1,2,3,4};
int[] arr2={0,1,2,3,4};
获得数组的长度:
数组名.length;
访问数组的元素使用数组的下标,下标从0开始:
数组名[下标]
注意:声明数组时设置的初始长度,在赋初始值时要添加对应数值的初始值,否则会报错。
2.二维数组:
声明语法: 数据类型[,] 数组名;
例:
int[,] aaa;
初始化语法:
int[,] aaa=new int[2,3];
aaa[0,0]=1;
aaa[0,1]=2;
aaa[0,2]=3;
aaa[1,0]=4;
aaa[1,1]=5;
aaa[1,2]=6;
或者
int[,] bbb=new int[2,3]{{1,2,3},{4,5,6}};
获得数组的长度:
数组名.length;
获得数组的维数:
数组名.Rank;
获得数组的指定维数i的元素个数:
Console.WriteLine(aaa.GetLength(1)); //值为3
访问二维数组的每一个元素:
int[,] aaa=new int[2,3] {{1,2,3},{4,5,6}};
for(int i=0;i<aaa.GetLength(0);i++)
{
for(int j=0;j<aaa.GetLength(1);j++)
{
Console.Write(aaa[i,j]+”,”);
}
Console.WriteLine(“”);
}
3. 对象数组:
保存三个学生的姓名和成绩,可以使用对象数组,即将学生的姓名、成绩封装到学生类中,在创建学生类类型的数组。
代码如下:
public class Student
{
public string name;
//姓名
public double score;
//分数
public void showInfo()
{
Console.WirteLine(name+”\t”+score);
}
}
Class program
{
static void Main(string[] args)
{
//定义对象数组
Student[] Stus=new Student[3];
//为对象数组的元素赋值
Stus[0]=new Student();
Stus[0].name=”张浩”;
Stus[0].score=100;
Stus[1]=new Student();
Stus[1].name=”李四”;
Stus[1].score=87;
Stus[2]=new Student();
Stus[2].name=”江乙”;
Stus[2].score=96;
Console.WriteLine(“前三名学员的信息为:”)
foreach(Student stu in stus)
{
stu.showInfo();
}
Console.ReadLine();
}
}
二、循环结构:
1. while循环:
while(条件表达式)
{
//代码块
}
注意:while循环是先判断条件是否满足,如果条件成立再执行循环体,直到条件不满足再满足。
2. do-while循环:
do
{
//代码块
}while(条件表达式);
注意:do-while循环是先执行一遍循环体,再判断条件是满足,所以至少执行一次循环体中的语句。
3. for循环:
for(表达式1;表达式2;表达式3)
{
//代码块
}
表达式1:定义循环变量。
表达式2:循环条件。
表达式3:更新循环变量的迭代部分。
注意:表达式1,2,3都可以省略,分号要保留,但是要在其他代码部分填写相应效果的代码。
4. foreach循环:
foreach(元素类型 元素变量名 in 数组)
{
//代码块
}
foreach循环用于遍历一个数据集合的每一项,需要设置一个标识符(变量)来依次表示其中的每一项。
语法中的“元素”是一个只读变量。
foreach结构不能改变数组中各元素的值,如果需要改变数组中的值,可以使用for循环。
5. 二重循环:
运行方式:外层循环执行一次,内层循环执行由循环开始到循环结束的一轮。
例:输出以下由数字组成的图案:
1
12
123
1234
12345
代码如下:
int i,j;
//外层循环控制打印行数
for(i=1;i<=5;i++)
{
//内层循环控制每行打印的数字个数
for(j=1;j<=i;j++)
{
Console.Write(j);
//打印一个数字
}
Console.WriteLine();
//内层循环打印完数字后换行
}
Console.ReadLine();
6. 跳转语句:
1. break语句:
break语句使程序跳出当前循环结构,并继续执行该循环后面的语句。
2. continue语句:
continue语句的作用是退出当前循环结构的本次循环,并开始执行当前循环结构的下一次循环。
注意:在嵌套循环中,当break语句和continue语句出现在内层循环时,只会影响内层循环的执行,而对外层循环没有影响。