zhyDaDa的个人站点

主要内容

  • 关键字 Continue
  • for 循环(和嵌套)
  • 程序调试

关键字 Continue

  • 作用:
  • 立刻结束本次循环
  • 判断循环的条件
  • 成立继续, 不成立退出

  • 注意: 凡是continue后面的代码不会被访问到
    如果循环变量i++在循环最后, 一定要考虑到

  • 练习: 找出100内所有质数

int i = 2;

while (i <= 100)
{
    //让i和比i小的(或者说i的一半)全部取余一遍, 有整除就continue
    int j = 2;
    bool b = true;
    while (j <= (i / 2))
    {
        if (i % j == 0)
        {
            b = false;
            break;
        }
        j++;
    }
    if (b)
    {
        Console.WriteLine(i);
    }
    i++;
}
Console.ReadKey();

自己写的时候错了两次, 一定要记得i++和j++

for 循环

  • 语法:
for (int i = 0; i < length; i++)
{
  循环体
}
  • for后面的三个表达式:
  • 声明循环变量, 记录循环次数
  • 循环条件
  • 改变循环的条件, 使循环条件会不成立

  • 特点: 一般用于知道循环次数的循环

  • 补充: 小窍门, for加tab两次可以跳出框架片段
    打forr可以跳出逆向循环的片段

练习

  • 求水仙花数
for (int i = 100; i <= 999; i++)
{
    int a = i / 100;
    int b = i % 100 / 10;
    int c = i % 10;
    if (a * a * a + b * b * b + c * c * c == i)
    {
        Console.WriteLine(i);
    }
}
Console.ReadKey();
  • 输出加法表
Console.WriteLine("输入正整数");
int number = Convert.ToInt32(Console.ReadLine());
for (int i = 0; i <= number; i++)
{
    Console.WriteLine("{0}+{1}={2}", i, number - i, number);
}
Console.ReadKey();

try-catch用户的输入是个好习惯(虽然但是懒得这么做orz)

for循环的嵌套

  • 打印九九乘法表
for (int i = 1; i < 10; i++)
{
    for (int j = 1; j <= i; j++)
    {
        Console.Write("{0}x{1}={2}\t", i, j, i * j);
    }
    Console.Write("\n");
}
Console.ReadKey();

Console.Write()用来表示接着前面打印
Console.WriteLine()相当于Console.Write("xxx\n")


程序调试

  • 功能:
  • 写完代码, 想看一下执行的过程
  • 写完程序, 发现没有按照预期执行

  • 方法:

  • F11 逐行 单步调试
  • F10 逐过程调试
  • 断点调试

  • 监视窗口: 红色的值代表刚刚发生变化

  • 断点: 在最左侧灰色位置设置断点
    如果选中了一行代码, 可以按快捷键F9

  • 注意: 黄色箭头是指将要执行但还没有执行的代码
Avatar photo
我是 zhyDaDa

前端/UI/交互/独立游戏/JPOP/电吉他/游戏配乐/网球/纸牌魔术

发表回复