c语言内循环,C语言循环控制语句

C语言循环控制语句是一个基于C语言的编程语句,该语句主要有while循环语句、do-while循环语句和for循环语句来实现循环结构。

中文名

C语言循环控制语句

类    别

while循环语句,do-while语句等

目    地

实现循环结构属    于

计算机领域

归    类

编程语句

基    础

C语言

C语言循环控制语句基本信息

编辑

在C语言程序中,一共有三种程序结构:顺序结构、选择结构(分支结构)、循环结构;顺序结构,从头到尾一句接着一句的执行下来,直到执行完最后一句;选择结构,到某个节点后,会根据一次判断的结果来决定之后向哪一个分支方向执行; 循环结构,循环结构有一个循环体,循环体里是一段代码。对于循环结构来说,关键在于根据判断的结果,来决定循环体执行多少次。C语言循环控制语句是一个基于C语言的编程语句,该语句主要有while循环语句、do-while循环语句和for循环语句来实现循环结构。

C语言循环控制语句循环语句

编辑

一般形式如下:

while(表达式)

语句;

其中执行过程如下:

8e6747ab7062f68ccb4604548ed82854.png

while语句

(1)计算while后面括号里表达式的值,若其结果非0,则转入(2),否则转(3)

(2)执行循环体,转(1)

(3)退出循环,执行循环体下面的语句。

由于是先执行判断后执行循环体,所以循环体可能一次都不执行。

循环体可以为空语句“;”。

C语言循环控制语句do-while语句

编辑

一般形式如下:

do

语句;

while(表达式);

(1)执行循环体,转(2)

25fdf4acd056085e53864051db9ed7d5.png

do...while语句

(2)计算while后面括号里表达式的值,若其结果非0,则转入(1),否则转(3)

(3)退出循环,执行循环体下面的语句。

注意:do……while语句最后的分号(;)不可少,否则提示出错。循环体至少执行一次。[1]

C语言循环控制语句for语句

编辑

for语句是循环控制结构中使用最广泛的一种循环控制语句,特别适合已知循环次数的情况。

一般形式如下:

for ( [表达式 1]; [表达式 2 ]; [表达式3] )

语句

其中:

表达式1:一般为赋值表达式,给控制变量赋初值;

6b20daeb96664483a6ac954731f69251.png

for语句

表达式2:关系表达式或逻辑表达式,循环控制条件;

表达式3:一般为赋值表达式,给控制变量增量或减量;

语句:循环体,当有多条语句时,必须使用复合语句。

其执行过程如下:首先计算表达式1,然后计算表达式 2。若表达式2为真,则执行循环体;否则,退出 for循环,执行for循环后的语句。如果执行了循环体,则循环体每执行一次,都计算表达式3,然后重新计算表达式2,依此循环,直至表达式 2的值为假,退出循环。

for语句的三个表达式都是可以省略的,但分号“;”绝对不能省略。for语句有以下几种格式:

(1)for(; ;) 语句;

(2)for(;表达式2;表达式3 ) 语句;

(3)for(表达式1;表达式2;) 语句;

(4)for(i=1,j = n; i < j; i ++,j - - ) 语句;

C语言循环控制语句三种语句比较

编辑

同一个问题,往往既可以用 while语句解决,也可以用 do-while或者for语句来解决,但在实际应用中,应根据具体情况来选用不同的循环语句。选用的一般原则是:

(1) 如果循环次数在执行循环体之前就已确定,一般用 for语句。如果循环次数是由循环体的执行情况确定的,一般用 while语句或者do- while语句。

(2) 当循环体至少执行一次时,用 do-while语句,反之,如果循环体可能一次也不执行,则选用while语句。

C++/C循环语句中,for语句使用频率最高,while语句其次,do语句很少用。

三种循环语句for、while、do-while可以互相嵌套自由组合。但要注意的是,各循环必须完整,相互之间绝不允许交叉。

C语言循环控制语句其他循环语句

编辑

多重循环结构

在多重循环中,如果有可能,应当将最长的循环放在最内层,最短的循环放在最外层,以减少CPU跨越循环层的次数。

一个循环体内又包含另一个完整的循环结构

三种循环可互相嵌套,层数不限

外层循环可包含两个以上内循环,但不能相互交叉

C语言循环控制语句c循环举例

编辑

这里使用c语言中的for循环。添加了九九乘法表查询、每天存钱问题、猴子吃桃问题、百钱买百鸡。

#include

void main()

{

float x,y,z,a,b,c,d,i,n,sum;int m;char yn;

system ("graftable 936");

yn='y';

while(yn=='y' )

{

clrscr ();

printf(" 欢迎使用 \n");

printf("请按提示操作,谢谢!\n");

printf("九九乘法表查询请按1\n");

printf("每天存钱问题请按2\n");

printf("猴子吃桃问题请按3\n");

printf("一分数序列课本请按4\n");

printf("百钱买百鸡请按5\n");

m=getch();

switch(m)

{case '1':

{

for (a=1;a<=9;a++)

{for (b=1;b<=a;b++)

printf("%.0f*%.0f=%2.0f\t",a,b,a*b);

printf("\n");

}

break;}

case '2':

{

a=1,sum=0;

for(i=1;i<31;i++)

{sum=sum+a;

printf("第%2.0f天收益%20.0f分钱\t",i,sum);

a=2*a;

}

break;}

case '3':

{

b=1;

for(i=1;i<10;i++)

b=2*(b+1);

printf("猴子吃桃问题:");

printf("第一天摘桃子的个数为%.0f个\n",b);

break;}

case '4':

{ a=2,b=1, sum=0;

for(i=1;i<=20;i++)

{ n=(1.0*a)/b; c=a; a=a+b; b=c; sum=sum+n; }

printf("2/1,3/2,5/3...最后结果%f\n",sum);

break;}

case '5':

{

for(a=1;a<=20;a++)

for(b=1;b<=33;b++)

for(c=3;c<=99;c=c+3)

if((5*a+3*b+c/3==100)&&(a+b+c==100))

printf("公鸡=%.0f,母鸡=%.0f,小鸡=%.0f\n",a,b,c);

break;}

}

fflush(stdin);

printf("请选择继续y或者离开n\n");

yn=getch();

}

}

参考资料

1.

C语言do-while语句的用法

.C语言中文网[引用日期2015-11-04]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/432782.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

同步,异步,多线程,你怎么看?

同步&#xff0c;异步&#xff0c;多线程&#xff0c;你怎么看&#xff1f; 原文:同步&#xff0c;异步&#xff0c;多线程&#xff0c;你怎么看&#xff1f;[原创]讲解同步与异步的帖子多如牛毛&#xff0c;个人的理解&#xff0c;简单地说同步就是串行&#xff0c;异步就是并…

openssl-1.0.0b - libssl 移植到ARM Linux

开发环境&#xff1a; ubuntu 10.04 arm-linux-gcc version 4.4.1 目标环境 友善之臂mini6410 linux-2.6.36 移植步骤 1&#xff0e;至官网下载最新的openssl&#xff0c;解压缩 2&#xff0e;cd进入openssl-1.0.0b目录 3&#xff0e;执行./Confiugre linux-elf-arm&#xff0c…

html仿qq最小化怎么实现,JS仿QQ好友列表展开、收缩功能(第一篇)

JS仿QQ好友列表展开、收缩功能(第一篇)发布时间&#xff1a;2020-10-17 14:20:03来源&#xff1a;脚本之家阅读&#xff1a;96作者&#xff1a;erdouzhang效果图如下所示&#xff1a;html:我的好友张三李四...企业好友小明小红...黑名单哈哈...css&#xff1a;ul,h3 {padding: …

Visual Studio 选择相同变量高亮

前段时间一直在使用matlab&#xff0c;今天需要使用vs2008&#xff0c;而用惯了matlab&#xff0c;习惯了其中一项选中变量高亮的设置&#xff0c;突然回来使用VS&#xff0c;感到各种不适应&#xff0c;顿时想到了一个词&#xff1a;矫情 呵呵&#xff0c;于是在网上找各种插件…

html是前段还是后端,javascript属于前端还是后端?

JavaScript是一种属于网络的脚本语言&#xff0c;已经被广泛用于Web应用开发&#xff0c;常用来为网页添加各式各样的动态功能&#xff0c;为用户提供更流畅美观的浏览效果。通常JavaScript脚本是通过嵌入在HTML中来实现自身的功能的。前端开发和后端开发的区别在于&#xff1a…

Linux查看设置系统时区

关于时区的概念&#xff0c;其实初中地理课已经涉及&#xff0c;很多人都多少了解一些&#xff0c;可能只是细节搞不太清楚。为什么会将地球分为不同时区呢&#xff1f;因为地球总是自西向东自转&#xff0c;东边总比西边先看到太阳&#xff0c;东边的时间也总比西边的早。东边…

SQL基础问题整理

在程序中&#xff0c;数据库操作是必不可少的部分&#xff0c;所以我们要备足数据库相关知识才能去应付程序中出现的种种问题。基于此&#xff0c;我特地在国外网站、博客上整理了一些问题&#xff0c;并附带了答案和解释、参考。为了保证“原汁原味”&#xff0c;我就保留了英…

腾讯或联姻优酷,微信嫁女模式引发互联网通婚潮流

据消息称&#xff1a;腾讯在前段时间联姻京东后有可能继续做甩手掌柜&#xff0c;这回要甩的是腾讯视频。 前几年&#xff0c;最火爆的电商业务除了电商外&#xff0c;再者一个就是视频业务了。 不知道大家还记得优酷当时的崛起之初的情景么?我来罗列一下&#xff1a; 1、 大…

[翻译] 学习iOS开发的建议:如何从菜鸟到专家

[文章原地址] http://mobile.tutsplus.com/tutorials/iphone/ios-quick-tip-from-novice-to-expert/ 翻译有误之处请勿见笑&#xff0c;本人将在文章的部分地方添加注释&#xff0c;并根据需求增减文章内容&#xff0c;在此对原作者辛勤劳作表示感谢 iOS Quick Tip: From Novi…

[nodejs]国内npm安装nodejs modules失败的几个解决方案

使用npm安装node模块时经常有卡住安装失败的情况&#xff0c;如图所示。原因在于npm服务器在美国&#xff0c;还有就是某强大的防火墙作用。这样的问题导致很多新手放弃使用node&#xff0c;几乎每天都有新手再问这个问题。现在分享一下解决这个问题的解决方案 1.可以通过一劳永…

java 合并单元格 把数据合并没了_合并单元格

合并单元格同样也是在表格中进行&#xff0c;关于合并单元格我们需要了解的两个概念&#xff1a;colspan 合并列&#xff0c;rowspan 合并行。colspan(跨列)合并列&#xff1a;colspan属性常用在 td 中&#xff0c;用来指定单元格横向跨越的列数。比如&#xff1a;将下面表格的…

一步步学习微软InfoPath2010和SP2010--第九章节--使用SharePoint用户配置文件Web service(2)--在事件注册表单上创建表单加载规则...

下面练习中&#xff0c;你将添加表单加载规则&#xff0c;将四个文本框域和图片控件与用户配置文件web service连接。当使用用户配置文件web service时&#xff0c;你需要将控件和来自web service合适的域绑定。这个过程需要用户配置文件架构的导航和筛选&#xff0c;来抽取合适…

光耦驱动单向可控硅_华越国际一文带路:可控硅触发设计技巧

序可控硅(Silicon Controlled Rectifier,简称SCR)&#xff0c;是可控硅整流元件的简称&#xff0c;是一种具有三个PN结的四层结构的大功率半导体器件&#xff0c;亦称为晶闸管。具有体积小、结构相对简单、功能强等特点&#xff0c;是比较常用的半导体器件之一。家用电器中的调…

Servlet JSP系列文章总结

前言 谢谢大家的捧场&#xff0c;真心感谢我的阅读者。 all 下一期&#xff0c;重点在 数据结构和算法 &#xff0c;希望给大家带来开心。已经出了几篇&#xff0c;大家爱读就是我的开心。 Servlet & JSP系列总结 博客&#xff0c;呵呵&#xff01;很开心&#xff0c;认识…

一般通话记录能保存多少条_鸡蛋放冰箱,能保存多少天?正确保存方法是什么?...

鸡蛋是我们经常吃的食物&#xff0c;很多家庭都会经常的买鸡蛋吃。相信大家买回来鸡蛋之后&#xff0c;普遍都是把鸡蛋放入冰箱里&#xff0c;什么时候想吃什么时候拿一个。但是大家可能不知道的是&#xff0c;鸡蛋就算是放在冰箱里保存&#xff0c;也是有保质期的&#xff0c;…

基本矩阵运算的Java实现

基本矩阵运算的Java实现 分类&#xff1a; 图像处理2012-09-18 10:36 2537人阅读 评论(3) 收藏 举报javamatrixparametersstringclassnull一&#xff1a; 矩阵的加法与减法 规则&#xff1a;矩阵的加法与减法要求两个矩阵的行列完全相等&#xff0c;方可以完成两个矩阵的之间的…

json返回页面读取data里的值都是object_【一】尤大神都说Vite香,让我来手把手分析Vite原理...

戳蓝字"前端优选"关注我们哦&#xff01;一.什么是Vite&#xff1f;法语Vite(轻量&#xff0c;轻快)vite 是一个基于 Vue3单文件组件的非打包开发服务器&#xff0c;它做到了本地快速开发启动、实现按需编译、不再等待整个应用编译完成的功能作用。对于Vite的描述&am…

e记法 python 底数_备战python二级

明天考试去&#xff0c;滚吧提醒与分值&#xff1a;1*40&#xff08;选择&#xff09;5*3&#xff08;填空&#xff09;101520比如今年的一个题目是要求随机抽一个手机品牌&#xff0c;这道题目的关键点在于你要使用seed()函数覆盖原来的给定的种子seed(1)&#xff0c;因为要求…

V210 UART TX 流程

1. 虽然V210的uart驱动是平台总线设备驱动模型&#xff0c;但实际上他还是以字符设备驱动存在&#xff0c;那么分析他的发送流程&#xff0c; 首先找到他的file_operations的write函数 drivers/char/tty_io.c tty_write(struct file *file, const char __user *buf, size_t cou…

浙江省计算机二级办公软件高级应用分值,浙江计算机二级高级办公软件word题分值是多少...

计算机文化基础试题集(浙江省计算机办公室软件等级考试悬赏分&#xff1a;10 - 离问题结束还有 12 天 23 小时一、选择题((1)&#xff5e;(30)每小题1分&#xff0c;(31)&#xff5e;(55)每小题2分&#xff0c;共80分)下列各题 A) 、B)、C)、D)四个选项中&#xff0c;只有一个选…