黑马程序员-循环/枚举/常量/结构/数组/冒泡排序

循环结构

Int i=0;

While(i<1000)

{

Console.writeline(“hello.world”);

i++;

}

While循环的语法:

While(循环条件)

{

循环体

}

执行过程:

1,  先判断循环条件,如果条件为true,则转向2,如果条件为false转向3

2,  执行循环体,循环体执行完后转向1

3,  跳出循环,循环结束

注意:在循环体中,一定要改变循环条件中的某个变量的值,使循环能够结束

N次循环,如果i从0开始,则循环条件为i<n

I控制循环次数,所以i又叫做循环变量

While特点:先判断后执行

Do-while

Do

{循环体}

While(条件)

1执行循环体

2判断条件是否成立,如果条件为true则转向1,如果条件为false,则转向3

3跳出循环

假如对于循环条件一开始就不成立,对于while循环一次都不会执行,对于do-while循环会执行一次,所以对于do-while循环体至少会执行一次

For 循环

语法

For(表达式1;表达式2;表达式3)

{

循环体;

}

执行过程:

第一步:计算表达式1,转向第二步

第二步:计算表达式2(循环条件)。如果表达式2的值为true,转向第3步,如果表达式2的值为false转向第5步

第三步:执行循环体,转向第4步

第四步:执行表达式3,转向第2步

第五步:循环结束

一般情况下,表达式1用于定义循环变量,和对循环变量赋初值,表达式2是循环条件,表达式3用于改变循环变量的值

Continue:立刻下一次循环

Break:跳出循环或switch

枚举、常量、结构

常量:const 类型 常量名=常量值

枚举:让我们定义一种类型,并且在定义这种类型时,我们要指定这个类型的所有值

语法:enum 自已起的类型名 {都有哪些值,用逗号分隔}

枚举的定义,一般和类定义在同一个级别,这样在同一个命名空间下的所有类就都可以使用这个枚举了

例如:enum gender{男,女}

Gender sex;\\定义了一个类型为gender的变量sex

Sex=gender.男;

注意:定义枚举时,值不能是int类型

枚举类型的变量都可以强制转换为int类型{男,女},男为0,女为1

枚举的值在定义时是有一个默认编号的,编号从0开始

{男=1,女}此时男编号为1,女编号为2

如何把一个字符串转换成枚举类型

(gender)(enum.parse(type of (gender)),”male”)

结构

为什么要用结构:

1,  比如我们上课讲的为了存储一个人的信息,要声明一组变量,当我们要存储n个个的信息时就要声明n组变量,很麻烦

2,  存储一个人的信息的这几个变量之间没有关系,容易记乱

语法

访问修饰符 struct 结构名

{定义结构成员}

例如

Public struct person//定义了一个叫person的结构

{public string name;

Public gender sex;

Public int age;

}

定义好一个结构后,就可以直接声明相应的变量了,声明好变量后通过变量名.成员名为访问结构成员

Person oneperson;

Oneperson.name=”张三”;

Oneperson.age=”50”;

Oneperson.sex=”女”;

 

数组

数组可以帮我们一次声明多个同类型的变量,这些变量在内存中是连续存储的

语法:数据类型[] 数组名=new 数据类型[数组长度]

Int[] score=new int[5];//声明了一个长度为5的数组,数组叫score

Int[] score={10,20,30};//声明了一个长度为3的数组,并赋值int[0]=10 int[1]=20 int[2]=30

Int[] score=new int[]{3,5,8}或Int[] score=new int[3]{3,5,8}

能过下标来访问数组

比如,我们要向第0个无素赋一个3,可以这样写

Score[0]=3;

Int类型数组一旦声明,里面的每个元素都被初始化成0

 

定义一个方法

Public static int readint()

{

Int number=0

Do{

Try{

Number=convert.toint32(console.readline());

Return number;

}

Catch

{

Console.writeline(“输入有误,请重新输入”);

}

}

  While(true);

}

使用方法

Console.writeline(“请输入你的年龄”);

Int age= readint();

Console.writeline(“请刚刚输入的年龄为”+age);

 

冒泡排序:

让数组中的元素两两比较,第i个与第i+1个比较,经过n(i-1)遍两两比较,数组中的元素,能按照我们预期的规律排序,要从大到小排序,我们进行两两比较的时候使用<

 

N个数需要排n-1趟

For(int i=0;i<score.length-1;i++)//控制比较趟数

{

for(int j=0;j<score.length-1-I;j++)

{

 if(score[j]<score[j+1])

{int temp=scores[j];

Score[j]=score[j+1];

Score[j+1]=temp;

}

}

}

 

posted @ 2012-04-27 12:40  蓝烟火  阅读(168)  评论(0)    收藏  举报