c#循环语句

for循环

// 讲解for语句,循环语句,主要用来循环执行多次相同的代码。
Console.WriteLine("我爱C#");
Console.WriteLine("我爱C#");
Console.WriteLine("我爱C#");
Console.WriteLine("----------------------------------");
// i = 0,i = 1,i = 2
// for语句构成:1. 初始化语句int i = 0;  2. 判断语句i<3; 3. for循环体  4. 累加语句
// 执行的顺序:
// a.初始化语句先执行,且只会执行一次。
// b.再执行判断语句,判断语句满足,则执行for循环体,不满足,则退出for循环
// c.执行for循环体后,再执行累加语句。
// 注:b,c在i值发生变化时,会循环执行,只到判断条件不满足,才结束for循环。
// for循环执行几次(判断语句执行几次?)?for循环体执行几次?去找判断条件满足几次?3次
for (int i = 0; i < 3; i++)
{
    Console.WriteLine("我爱C#" + i.ToString());
}
Console.WriteLine("循环体外的语句");
Console.WriteLine("----------------------------------");

// 初始化语句,变量名称一般命名成i,j,m,n
for (int a = 0; a < 3; a++)
{
    Console.WriteLine("我爱C#" + a.ToString());
}

Console.WriteLine("----------------------------------");
int m = 0; // 初始化语句可以从()中移出到for外面。平时不建议把初始化语句移出。
for (; m < 3; m++)
{
    Console.WriteLine("我爱C#" + m.ToString());
}
Console.WriteLine(m); // 3  初始化语句并不是只能在for循环体中使用。

// 变量要先声明,再使用,所以for的初始化语句一定要移出到for语句的上面。
int b = 10;
Console.WriteLine(b);


Console.WriteLine("----------------------------------");
int n = 2; // 如果初始化语句移出到for外,不能在同一个命名空间中重名。所以此处不能再以m命名
for (; n >= 0; n--)
{
    Console.WriteLine("我爱C#" + n.ToString());
}
Console.WriteLine(n);

Console.WriteLine("----------------------------------");
for (int i = 2; i >= 0; i--)
{
    Console.WriteLine("我爱C#" + i.ToString());
}
//Console.WriteLine(i); // 报错:初始化语句没有移出到for外,i只能在循环体中使用。

Console.WriteLine("----------------------------------");
// continue跳出当前循环, break中断循环
for (int i = 0; i < 3; i++)
{
    if (i == 1)
    {
        // 多次循环时,如果有其中一次|多次循环,开发者想特殊处理,用到continue关键字。
        Console.WriteLine("特殊处理了i=1的情况");
        // continue; // 继续,跳出当前的此次循环,继续下一次循环
        break; // break中断循环后,其他的循环不再执行,for提前结束
    }
    Console.WriteLine("我爱C#" + i.ToString());
}

// 转换首字母大写
string word = "hello"; // Hello
string newWord = "";
for (int i = 0; i < word.Length; i++)
{
    char letter = word[i];
    if (i == 0)
    {
        Console.WriteLine(new string(letter,1).ToUpper());
        newWord += new string(letter, 1).ToUpper();
        continue;
    }
    Console.WriteLine(new string(letter, 1));
    newWord += new string(letter, 1);
}
Console.WriteLine(newWord);


/*
 * for重点:
 * 1. for语句结构四部分。
 * 2. 执行顺序。
 * 3. 细节(初始化执行次数,放的位置,判断语句执行次数,循环体执行的次数等);
 * 4. for配合break,continue语句使用。
 */

其他循环


// 任何的for循环和while循环可以互转。
// while当...时候...

int i = 0; // 初始化语句,和for语句相比,初始化语句必须放到()的外面
while (i < 3) // 判断语句
{
    // 循环体
    Console.WriteLine("我爱C#" + i.ToString());

    // 累加|累减语句,切记:不能忘记此语句,忘记会陷入死循环。
    i++;
    //i = i + 1;
}
Console.WriteLine("--------");

int m = 2;
while (m >= 0)
{
    Console.WriteLine("我爱C#" + m.ToString());
    m--;
}
Console.WriteLine("--------");

int n = 2;
while (n >= 0)
{
    if (n == 1)
    {
        Console.WriteLine("特殊处理一下i=1的情况");
        //n--;
        //continue; // 跳转当前的while循环,继续下一次循环。需要下次循环时,切记需要执行累加|累减语句。
        break; // 中断while循环。中断循环前不需要累加|累减语句。
    }
    Console.WriteLine("我爱C#" + n.ToString());
    n--;
}
Console.WriteLine("--------");


// for语句,while语句都有可能一次循环都不执行。
// 只要判断语句第一次都不满足,for语句和while语句一次循环也不执行。
int j = 0;
while (j < 0)
{
    Console.WriteLine("一次循环也不执行!");
    j++;
}
Console.WriteLine("--------");

for (int k = 0; k < 0; k++)
{
    Console.WriteLine("一次循环也不执行!");
}
Console.WriteLine("--------");

// 但do...while...语句可以保证循环只少有一次可以执行。
int k1 = 0; // 初始化语句
do
{
    // 循环体
    Console.WriteLine("不论判断条件是否满足,我先执行一次再说");

    // 累加|累减语句
    k1++;
} while (k1 < 0); // 判断语句

// foreach语句主要用来循环数组,后面讲数组时再回头详细讲解
int[] nums = { 1, 2, 3, 4, 5};
Console.WriteLine(nums[0]); // 取第一个元素 1  [index]索引

string[] strs = { "abc", "dsh", "张三" };
Console.WriteLine(strs[2]); // 取第三个元素 [index]索引

Console.WriteLine("--------");
// foreach语句可以认为是for的优化。
// 能使用foreach语句的,都可以转化成for和while。
// 但for或者while语句不一定能转换成foreach。foreach一般用来循环数组,集合。
// foreach中没有初始化语句,判断语句,累加|累减语句。
foreach (string item in strs)// in 关键字, strs数组中的某一项
{
    Console.WriteLine(item);
}

Console.WriteLine("--------");
foreach (int item in nums)
{
    if (item == 3)
    {
        // continue;
        break;
    }
    Console.WriteLine(item);
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

玉玊则不达

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值