来自童年记忆的纸飞机带着C语言for循环最详细讲解,勾起你的童真!

在我们学习C语言的初始阶段,可能让我们发愁的第一个知识就是循环。

  1. for循环的童年缩影
  2. for循环的注解
  3. 程序举例
  4. for语句分析

今天,它来了!

相信你自己!看了这篇文章,你就会对循环有一个新的认识!

在我刚接触C语言for循环的时候就在想什么是循环?它的机理是什么?怎么使用它解决问题?它是算法吗?等等一些和大家相似的问题。

慢慢的到了以后学习的过程中我才一点一点的学习到原来for循环是以下这些内容:

首先先跟大家分享一下童年的小游戏:小时候我们都玩过拾石子,一共有5个石子,我们从一个开始颠起,然后抓起地上的其他4个,如果我们成功完成这个过程,在这个过程中我们必须是颠起一个并且成功接住,否则就挑战失败!我们就会进入下一关,就是颠起两个,拾起地上的三个,同样这个过程中如果颠起两个但未接住那就算挑战失败!反之,如果颠起两个并接住,那就挑战成功。然后颠起3个,4个,5个那就算你和你的小伙伴的拾石子游戏中你是获胜者!

这个过程就可以理解为一个循环过程:

首先颠起的一个石子就是起始变量,5个石子就可以理解为一个控制变量,通过这两个步骤你就可以拾起地上的石子,相当于执行循环语句下面的条件(通常是if语句),在成功颠起一个石子并接住以后我们就可以颠起两个,这一步就相当于for语句中的自增过程。
然后带这这个小回忆,我们接下来进入今天的学习!

首先引入今天的对象:

for(表达式1,表达式2,表达式3)函数体

注解

表达式1
这个语句通常是赋值语句,也就是将循环变量初始化也就是赋值,需要有一个起始的标志条件,程序才可以运行。

表达式2:
这个语句通常是关系表达式或者逻辑表达式,用来判断一下是否继续循环下去。

表达式3:
这个语句通常是自增自减表达式,实现对循环控制变量的修改。

我们通过循环语句模拟一下拾石子过程:

  for(颠起石子=1,石子总数=5,石子数在原来基础+1) if(成功颠起并接住)自己=胜算/*自己的胜算加成*/

因此我们可以把for语句理解为:

 for(循环变量赋初值;循环条件控制量;修改循环变量)循环体语句;

语句分析:

首先通过对循环起始变量(也叫循环控制变量,只不过我本人喜欢这样记,学习其实是一个适应自己的行为,让自己懂得自己,才是真正的学到!)的赋初值,然后计算表达式2的值,如果这个输入进去的这个值符合表达式2的要求,即为真,那么执行循环体语句,如果为假,则退出循环。执行完毕循环体就会执行表达式3,调整循环控制变量的值,返回执行表达式2的值,依此重复这个过程,知道表达式2的值为假,则退出循环。

== 问题举例==:
用for语句计算1+2+3…+n的值

程序代码:

#include<stdio.h>
int main()
{int i,n,sum;   /*定义变量*/printf("Please enter the number of 'n' :");/*输入提示语句*/scanf("%d\n",&n);/*输入n值*/sum=0;/*给sum赋初值*/for(i=1;i<=n;i++)/*循环语句,当i>n时结束*/{sum=sum+i;/*求和,将结果放入sum中*/}printf("The sum of 1+2+3+....+%d = %d\n",n,sum);/*输出sum的值*/return 0;
}

输入输出结果:

程序分析:如果大家不明白是怎样执行的,我希望大家去单步调试一下,循环语句特别希望大家亲自单步调试!因为这样大家才能发现并理解for循环是如何执行的!

亲力亲为者成王事也!

for语句的说明:

1.多数情况下,for语句可以使用等价的while语句来表示。

for(表达式1;表达式2;表达式3)循环体;

等价于:

表达式1;
while(表达式2)
{循环体;表达式3;
}

2.for循环中的三个表达式都是可选项,即可以省略,但是表达式之间的“;”不可以省略。

** 1.省略表达式1,也就是对循环语句不进行赋初值,因此为了能够正常的执行循环,需要在for语句之前给循环起始变量赋初值。**
例如

n=1;
for(;n<10;n++)
{循环体;
}

等价于

for(n=1;n<10;n++)
{循环体;
}

一般使用这种格式的原因是:循环控制变量的初值不是已知常量,而是需要通过前面语句的执行计算得到的。

2.省略表达式2的值,表示不用判断循环条件是否成立,也就是说循环条件总是满足,也就是陷入了死循环。
例如:

for(i=1;;n++)
{循环体;
}

等价于:

while(1)

3.省略表达式3,如果省略表达式3,就不会对循环控制变量进行操作,如果需要这种情况可以在循环体中加入修改循环控制变量的语句。

例如


for(i=1;i<=10;)
{...n=3*n;...
}

到了这里我觉得大家对于for循环已经有了新的理解和见识!恭喜你,今天又是元气满满的一天!

留一个小作业:
利用for循环输出1-1000之中可以同时被3,5,7整除的数
编程完毕如果有问题写在下方评论区,和大家分享!

纸上得来终觉浅!
需知此事须躬行!

加油,有梦想的人!

我是悟空,希望和你们一起在编程云上共睹风采

坐着童年纸飞机的C语言for循环!超好玩!超详细!相关推荐

  1. Java语言的循环控制结构

    Java语言的循环控制结构 循环控制结构:是在一定条件下,反复执行某段程序的流程结构,被反复执行的程序称为循环体.循环控制结构是程序中非常重要和基本的一种结构,它是由循环语句来实现的. Java 的循 ...

  2. c语言for循环的第三句,for循环语句的用法

    for循环有三种结构:列表for循环,不带列表for循环和类C风格for循环. do和done之间的命令成为循环体,执行次数和list列表中常熟或字符串的个数相同.for循环,首相是将in后list的 ...

  3. oracle数据库sql培训,Oracle数据库SQL语言实战培训教程(全面、详细、案例、精讲)套餐...

    风哥oracle数据库SQL语言实战培训教程(案例.精讲)套餐,DBA必备技能. 套餐介绍: 风哥Oracle数据库SQL语言实战培训教程(案例.精讲)套餐,DBA必备技能. 内容: SQL语言基础入 ...

  4. c语言for循环说课稿,C语言FOR循环说课稿.docx

    C语言FOR循环说课稿 各位评委老师上午好,我今天说课的内容是"FOR循环"(板书),下面我将从教材的地位及作用.学生学情.教学目标.教学重难点.教法.学法.教学过程.教学效果的预 ...

  5. c语言 程序循环,C语言程序设计-循环例子

    <C语言程序设计-循环例子>由会员分享,可在线阅读,更多相关<C语言程序设计-循环例子(28页珍藏版)>请在人人文库网上搜索. 1.C 语言程序设计基础篇,第 7 章 简单程序 ...

  6. 《零基础看得懂的C语言入门教程 》——(七)C语言的循环分分钟上手

    一.学习目标 了解循环的使用方法 目录 C语言真的很难吗?那是你没看这张图,化整为零轻松学习C语言. 第一篇:(一)脱离学习误区 第二篇:(二)C语言没那么难简单开发带你了解流程 第三篇:(三)轻轻松 ...

  7. c语言 char c1,c2; for (c1='0',C语言-5循环结构(PPT)复习课程.ppt

    C语言-5循环结构(PPT)复习课程.ppt 第五章 循环结构程序设计;课程引入;第五章 循环结构程序设计;5.1 while 语句;例1:求;1. do-while循环语句的形式 do 循环体 wh ...

  8. C语言for循环的嵌套例题,c语言 for循环的嵌套(含答案)

    c语言 for循环的嵌套(含答案) 第 33.34 课时 for 循环的嵌套实验题一:1.下面程序的功能是计算:至 50 中是 7 的倍数的数值之和,请选择填空.D#include main() in ...

  9. C语言 while 循环 - C语言零基础入门教程

    目录 一.while 循环简介 1.while 循环语法 2.while 使用 二.while 循环中使用 break 三.while 循环中使用 continue 四.猜你喜欢 零基础 C/C++ ...

  10. C语言 for 循环 - C语言零基础入门教程

    目录 一.for 循环简介 1.for 循环语法简介 2.for 循环代码执行步骤 3.for 循环适用场景 4.for 循环嵌套 二.for 循环实战 1.简单的 for 循环实现累计求和:1+2+ ...

最新文章

  1. firefox如何不让网站登录失效_Firefox Preview 4开放下载:引入登录管理、热门网站等功能...
  2. 深度学习核心技术精讲100篇(三十四)-智能化搜索,旅行场景下的个性化营销平台揭秘
  3. [公测]微信小程序设计指南文档
  4. linux date 常用格式,5、总结Linux常用命令使用格式,并用实例说明。例如echo、screen、date、ifconfig、export等命令...
  5. 计算机专业 毕业论文 百度云,计算机专业毕业论文.pdf
  6. activiti报错ProcessEngines.getDefaultProcessEngine()为null
  7. erlang之三种socket消息循环
  8. python基础编程语法-Python基础语法介绍:面向对象编程(上)
  9. [USACO18DEC]The Cow Gathering
  10. 解决office 2010每次启动都出现配置进度的方法
  11. php在线解密,zend在线解密
  12. 微信小程序编译的时候模拟器空白显示
  13. php gd测试代码,PHP gd_info()用法及代码示例
  14. 3D刷脸支付推动新零售行业发展
  15. Java程序员是考研还是毕业就就业?
  16. 95后程序员月薪2万背着电脑送外卖,送单途中帮人修复bug
  17. Word无法找到宏或宏被禁用如何解决
  18. 自媒体推广该怎么做?学懂这10招,走路横着走
  19. 关于wiretap库
  20. 电脑用户名中文改英文步骤总结

热门文章

  1. 2008年十大最值得关注创业公司
  2. latex 中的长度单位,尺寸
  3. 【元胞自动机】基于元胞自动机实现单边教室人群疏散含Matlab源码
  4. 视频加水印的软件有哪些?这几款软件可以无痕去水印
  5. ftp服务器批量下载文件(方式二)
  6. gdb 查看是否 栈溢出_GDB调试之二栈溢出
  7. MOSFET管电流方向能反着流吗?体二极管能过多大电流?MOS管构造
  8. MeshLab怎么换背景颜色?
  9. 用TFmini-Plus实现人流、身高测量
  10. 联想小新pro16按不了Fn+Q键