2764315761 发表于 2014-9-1 07:19:12

for循环怎么这么难,555,我一定要学会

还是搞不太懂for循环语句格式file:///,有谁能帮我讲解一下


脑子都乱了

ygrong_2008 发表于 2014-9-1 08:48:37

我是用C语言来写单片机程序的,这个不太清楚

musilintan 发表于 2014-9-1 10:00:51

for(定义循环变量;循环终止条件;循环度)
{
      循环体:需要循环的东西;
}

for(int i=0; i<5; i++)
{
      printf("Hello World\n");
}

输出结果:
Hello World
Hello World
Hello World
Hello World
Hello World

注:循环度是最后运行的,例如i++会在循环体运行后执行

川本姨夫 发表于 2014-9-1 12:58:59

理论上for循环可以代替所有C语言中的循环,比如while 和do while循环。
for循环格式:for(初始化表达式;终止条件;任意表达式)
   其中三个部分都可省略,以达到不同目的

             初始化条件: 循环执行前的必要的变量赋值,环境初始化等,也可写在for语句之前,比如
                                     for(i=0;i<=9;i++) 和 int i = 0;   for(;i<=9;i++)
                              效果是一样的
             终止条件:每次循环体执行结束后都会判断 终止条件是否为真,为真则继续循环,否则结束循环。但如果不填终止条件,循环就会成为死循环,必须在循环体中使用break语句跳出:
                                    for(i=0;; i++){ if (i> 100) printf("%d",i);else break;}
                           这会输出1到100的自然数,如果没有break的话那就会输出到整数表示上限回滚继续输出
               最后那个任意表达式虽说是任何表达式,但是起码得跟循环有关吧,得每次让循环状态更接近结束条件,不然怎么退出循环

               最后演示一下for代替while的例子:
从屏幕读取字符,只要字符不是a就继续接受输入:
while版:
printf("请输入一个字符:\n");
while(getchar()!='a'){
      getchar();
      printf("请重新输入:\n");
}
for版:
for( printf("请输入一个字符:\n"); getchar()!= 'a'; printf("请重新输入:\n") )
         getchar() ;
            

至于循环体里面的getchar() 是因为要从键盘缓冲区里扔掉回车,不然就会出问题

   for是不是比while简单多了,现在看起来for循环应该很简单了吧

2764315761 发表于 2014-9-3 08:22:17

我谢谢大家,学会了{:5_95:}

Just_feel_not_i 发表于 2014-9-4 16:06:10

1243 243

Penta_Kill 发表于 2014-9-5 11:22:29

不知道你要问什么,你只是单纯的给出一个主函数

蚯蚓翔龙 发表于 2014-9-5 13:12:56

加油吧。。

MyOrange 发表于 2014-9-7 05:39:50

for(A; B; C)
{
    D;
}
执行顺序,第一次执行到此处时   A->B->D->C->B->D->C->B->D->C->B->D->C其中B->D->C的循环次数不一定,根据条件决定,条件一般为B,可能有时有多个条件。(这个不确定,有见过多个条件的,但是不知道合不合法)如果条件B满足,则继续按D->C->B->D->C........的结构进行,否则直接退出循环,不再执行D和C

gyixue 发表于 2014-9-7 22:24:15

真的不清楚

小败类 发表于 2014-9-15 15:21:57

看看
页: [1]
查看完整版本: for循环怎么这么难,555,我一定要学会