一聚教程网:一个值得你收藏的教程网站

热门教程

asp.net中for循环语句的用法介绍

时间:2022-06-25 03:54:02 编辑:袖梨 来源:一聚教程网

for循环的格式为:
for(【初始化表达式】;【条件表达式】;【迭代表达式 】)
{
          //语句块
}
其中:【初始化表达式】;【条件表达式】;【迭代表达式 】都是可选的,【条件表达式】必须是一个布尔表达式。

执行步骤为:
第一步:开始执行初始化表达式,只执行一次。
第二步:开始执行条件表达式(若为空,则返回true),若为true,则执行大括号中的语句;若为false,则直接跳到for的结束点。
第三步:开始执行迭代表达式+条件表达式。
第四步:若条件表达式为true,则执行大括号中的语句,返回第三步;若为false,则控制点转到for的结束点。

下面我们通过多个例子来加深理解:
例子一:

 代码如下 复制代码
for (int num = 1; num < 0; num++)
{
    Response.Write(num);
}

结果:空。
原因:先执行int num = 1;再执行num < 0;这时num < 0 返回false,退出循环。

例子二:

 代码如下 复制代码
Response.Write("结果:
" );
for (int num = 1; num < 5; ++num)
{
    Response.Write(num + "
");
}

中第三部分换成:num++其结果也是:


原因:不要老是被i++,++i的问题搞混,在这里用起来一样,另外不要写类似int i = 0;i = i ++;i = ++i的写法。i = i++是啥呢?它就等价于:

 代码如下 复制代码
int tmp = 0;
i = 1;
i = tmp;


本示例的FOR循环创建一个Mandelbrot图像。

 代码如下 复制代码

using System;
namespace a
{
class Program
{
public static void Main(string[] args)
{
double realCoord,imagCoord;
double realTemp,imagTemp,realTemp2,arg;
int iterations;
for (imagCoord=1.2;imagCoord>=-1.2;imagCoord-=0.05)
{
for(realCoord=-0.6;realCoord<=1.77;realCoord+=0.03)
{
iterations=0;
realTemp=realCoord;
imagTemp=imagCoord;
arg=(realCoord*realCoord)+(imagCoord*imagCoord);
while((arg<4)&&(iterations<40))
{
realTemp2=(realTemp*realTemp)-(imagTemp*imagTemp)-realCoord;
imagTemp=(2*realTemp*imagTemp)-imagCoord;
realTemp=realTemp2;
arg=(realTemp*realTemp)+(imagTemp*imagTemp);
iterations+=1;
}
switch (iterations % 4)
{
case 0:
Console.Write(".");
break;
case 1:
Console.Write("o");
break;
case 2:
Console.Write("0");
break;
case 3:
Console.Write("@");
break;
}
}
Console.Write("n");
}
Console.ReadKey();
}
}
}


以前在群里面看到的,觉得挺好的。贴出来

 代码如下 复制代码

    class Program
    {
        static void Main(string[] args)

        {

            //List items = new List();

            //for (int i = 0; i < 100; i++)

            //{

            //    items.Add(i);

            //}
            //for (int i = 0; i < items.Count; i++)

            //{

            //    items.RemoveAt(i);

            //}
            //Console.WriteLine(items.Count);

            //Console.ReadKey();
           //List items = new List();
            //for (int i = 0; i < 100; i++)

            //{

            //    items.Add(i);

            //}

            //int itemCount = items.Count;

            //for (int i = 0; i < itemCount; i++)

            //{

            //    items.RemoveAt(i);

            //}

            //Console.WriteLine(items.Count);

            //Console.ReadKey();

           //var items = new List();

            //for (var i = 0; i < 100; i++)

            //{

            //    items.Add(i);

            //}

             //items.RemoveAll(item => item > 50);

 

            //Console.WriteLine(items.Count);

            //Console.ReadKey();

             //var items = new List();

 

            //for (var i = 0; i < 100; i++)

            //{

            //    items.Add(i);

            //}

 

            //foreach (var item in items)

            //{

            //    items.Remove(item);

            //}

 

            //Console.WriteLine(items.Count);

            //Console.ReadKey();

             var items = new List();

            for (var i = 0; i < 100; i++) items.Add(i);
            var items2 = items;

            foreach (var item in items2)

            {

                items.Remove(item);

            }

 

            Console.WriteLine(items.Count);

            Console.WriteLine(items2.Count);

            Console.ReadKey();

        }

    }

热门栏目