Unity系统班之第三课

2021-03-25 19:04发布

一、while循环

语法结构
while(bool 类型表达式)
{
    循环执行的代码;
}
执行流程:首先执行bool类型表达式,如果成立那么执行while大括号中的代码,
count  叫做循环增量,while中的代码叫做循环体

int count = 10000;
while (count>0)
{
    count--;
    Console.WriteLine("大黄!!");
}

break关键字,结束循环体继续执行循环体后面的代码,通常和if使用.
int monsterHp = 100;
while (monsterHp>0)
{
    monsterHp -= 10;
    Console.WriteLine(monsterHp );
    //当怪物血量不高于50时进行秒杀
    if (monsterHp<=50)
    {
        Console.WriteLine("怪物被秒杀了!");
        break;
    }
}
continue  ,遇到该关键字结束本轮循环,继续下一轮
int mosterHp = 100;
while (mosterHp>0)
{
    if (mosterHp==50)
    {
        mosterHp -= 1;
        continue;
    }
    mosterHp -= 10;
}


二、do...while循环

语法格式:
do
{
    循环体;
 }while(bool类型表达式);  
 
无论条件满不满足循环体,都会执行一次,然后在判断bool表达式是否成立,成立继续执行循环,否则跳出
int count = -1;
do
{
    Console.WriteLine("干饭!");
} while (count>0);

三、for循环

 语法结构:
 for(循环变量初始化;循环条件;循环变量变化)
 {
        循环体;
}
   1. 先执行循环体变量初始化
   2.执行循环条件,如果条件成立执行循环体,否则结束循环
   3.执行完循环体后执行循环变量的变量
   4.循环变量变化之后返回第二步
int sum = 0;
for (int count = 1; count < 101; count++)
{
    sum += count;
}
Console.WriteLine(sum);

练习:打印1-100中不能被7整除又不包含7的数
int n = 0;
for (int i = 1; i <= 100; i++)
{
    if (i%7!=0&&i/10!=7&&i%10!=7)
    {
        Console.Write("{0,-4}",i);
        n++;
        if (n%7==0)
        {
            Console.WriteLine();
        }
    }
}

练习:求1-3+5-7+9-...-99的值
int sum=0,sum1=0,sum2=0,n=0;
for (int i = 1; i < 100;i= i+2)
{
    n++;
    if (n%2==0)
    {
        sum1 -= i;
    }
    else
    {
        sum2 += i;
    }               
}
sum = sum1 + sum2;
Console.WriteLine("其和为"+sum);

int sum = 0;
int num = 0;
for (int i = 1; i <= 99; i+=2)
{
    if (num%2==0)
    {
        sum += i;
    }
    else
    {
        sum -= i;
    }
    num++;
}

五、一维数组

 数组:相同数据类型的成员组成的一组数据.也就是说数组中的每个数据类型都一样.数组中的每一个数据都叫做一个元素.
 一维数组的声明:数据类型名[] 数组名;                        
声明一个int类型的数组
int[] scores;
float类型数组
float[] attacks;
string 类型数组
string[] name;

数组初始化:动态初始化和静态初始化
1.第一种动态初始化
   数据类型名[]  数组名=new 数据类型名[数组长度];
   数组类型的数组,元素默认值是0;
   布尔类型的数组,默认值是false;
   字符串类型的数组,默认值是null;
   字符类型的数组,默认值是空;
   引用类型的数组,默认值是null;
2.第二种动态初始化
数据类型[]  数组名=new 数据类型[数组长度]{元素1,元素2};
使用该种方式元素怒的个数一定要和长度保持一致
3.第三种动态初始化
数据类型[] 数组名=new数据类型名[]{元素1,元素2};
数组的长度由给定的元素个数来决定.
4.静态初始化
数据类型[]   数组名={元素1,元素2,元素3};

int[] scores = new int[5];
Console.WriteLine(scores[0]);
第二种动态初始化
int[] ages = new int[5] {18,29,21,20,30 };
第三种动态初始化
string[] names = new string[] { "哈哈", "嘿嘿", "吼吼" };
静态初始化数组
int[] levels = { 0, 99, 100, 888, 999 };
scores[0] = 99;
输出指定下标对应的元素值
Console.WriteLine(levels[0]);
修改指定下标对应的元素值
levels[0] = 10;
Console.WriteLine(levels[0]);

数组的访问,数组中元素的索引是从0开始的,如果一个数组有3个元素,那么访问方式为array[0]为第一个元素,array[1]为第二个元素,array[2]是第三个元素.如果索引超出数组长度抛出数组长度越界异常


心得体会:
         ?-?