c语言循环结构字母,C语言教程 第五章 循环结构

本文详细介绍了循环结构的基础概念,包括for循环、while循环和do-while循环的使用方法,并通过多种编程练习来加深理解,还涉及了多重循环的应用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.循环的基本概念

循环结构是指按照指定的条件重复执行某个指定的程序段。

2.for语句

? 格式:for

(表达式1;表达式2;表达式3)

语句;

1859142221175935423.jpg

? 确定的循环次数

注意:

?for循环在进入循环体之前首先判断执行条件是否被满足,如果条件不满足,则不循环。即循环体可以一次都不执行。

①计算1+2+3+......+99+100 (“累加”)

1859142221175935423.jpg

② 计算n!

即:输入:n

输出:1×2×3×......×n (“累乘”)

③ 打印1~10的平方和立方

输出样例:

1 - 1 1

2 - 4 8

3 - 9 27

…….

10 - 100 1000

④ 输出所有的大写字母。

⑤ 计算从0到某个数之间所有奇数的和。

⑥从键盘读入N个数,求出最大数和最小数。

For语句使用的几点说明:

? 循环初始条件(即:表达式1)可以由多个子语句组成,各子语句之间用“,”分隔。

int N,C,i;

cout<

N:"<

cin>>N;

for(C=1,i=1;i<=N;i++)

C=C*i;

cout<<

C<

? for循环中的表达式1,表达式2,表达式3三项均可以省略。

int N,C,i;

cout<

N:"<

cin>>N;

C=1,i=1;

for(;i<=N;)

C=C*i, i++;

cout<<

C<

3. While循环

While

(判断条件)

循环体;

J 循环次数未知

J 练习:输入一串字符,以‘#’结束,统计在这串字符中'a'出现的数目。

4. do-while 循环

do

{

循环体;

}

While

(判断条件)

J 直接进入循环体,循环体至少被执行一次。

J 练习:1、求n是否是质数 2、求两个数的最小公倍数和最大公约数。

5. 多重循环(for循环的多层嵌套)

for(e1-1;e1-2;e1-3)

{ ……

for(e2-1;e2-2;e2-3)

{……

}

……

}

在使用循环嵌套时应注意

(1)能够正确判断内层循环体的执行次数。

(2)能够正确判断内层循环体的范围。

(3)注意内层循环的初值设定。

(4)能正确处理内层循环与外层循环变量的关系。

① “百钱买百鸡”是我国古代的著名数学题。题目这样描述:3文钱可以买1只公鸡,2文钱可以买一只母鸡,1文钱可以买3只小鸡。用100文钱买100只鸡,那么各有公鸡、母鸡、小鸡多少只?(要求:用循环结构程序设计计算出各有公鸡、母鸡、小鸡多少只?)

2、搬砖问题:36块砖,36人搬,男搬4,女搬3,两个小孩抬一块砖。要求一次全搬完,问男、女、小孩各若干?

3、一张单据上有一个5位数的号码1XX47,它的千位和百位的数字已被涂抹得模糊不清,如下所示;另一方面,我们知道这个数能被57或67除尽。请设计一个算法,找出该单据原有的可能号码及个数。

4、找出所有的三位数,要求它的各位数字的立方和正好等于这个三位数。例如:153=1^3+5^3+3^3就是这样的三位数。

5、一位卡车司机违反交通规则,撞死了行人。当时有三位目击者,都没有看清卡车的牌照号码,只记住了牌照的某些特征:甲记住前两个数字是相同的,乙记住牌照的后两位数字是相同的,丙是一位数学家,他说:“牌照号码肯定是一个四位数,并且这个四位数恰好是一个整数的平方。”根据这些,你能否正确判断出牌照号码?

6、同一个笼子里,有一些鸡和兔子,如果这些鸡和兔子一共有35个头,94只脚,请问笼内有鸡和兔各多少只?

② 在屏幕上显示由*组成的三角形图形,其中三角形的层数N由键盘输入。

如N=4时,显示图形如下

*

**

***

****

③在屏幕上显示由*组成的三角形图形,其中三角形的层数N由键盘输入。

如N=4时,显示图形如下

*

***

*****

*******

④四个学生上地理课时,回答我国四大淡水湖的大小时这样说,

甲:最大洞庭湖,最小洪泽湖,鄱阳湖第三;

乙:最大洪泽湖,最小洞庭湖,鄱阳湖第二,太湖第三;

丙:最小洪泽湖,洞庭湖第三;

丁:最大鄱阳湖,最小太湖,洪泽湖第二,洞庭湖第三;

对于每个湖的大小,每个学生仅答对了一个,请编程确定四个湖的大小。

⑤ 甲、乙、丙、丁、戊五个人在运动会上分获100米、200米、跳高、跳远、铅球冠军,有四个人猜测比赛结果,

A说:乙获铅球冠军,丁获跳高冠军; B说:甲获100米冠军,获跳远冠军;

C说:丁获200米冠军,丙获跳远冠军; D说:乙获跳高冠军,获铅球冠军;

结果每人只说对了一句,问五人各获哪项冠军。

⑥ 四个小孩在校园内踢球,“砰”的一声,不知是谁踢球把教室窗户的玻璃打破了,王老师跑出来一看,问:“是谁打破了玻璃”?

小张说:“是小强打破的。”

小强说:“是小胖打破的。”

小明说:“我没有打破窗户的玻璃。”

小胖说:“王老师,小强在说谎,不要相信他。”

这四个小孩中只有一个说了老实话。

请判断:说实话的是谁?是谁打破了窗户的玻璃

6. 终止循环语句

★break语句的使用格式:

break;

break语句的功能是终止当前循环,在循环体中遇到这个语句时,将无条件的跳出该循环。

★continue语句的使用格式:

continue;

continue语句的功能是中断本次循环体的执行过程,直接进入循环体的下一次循环。

练习:

1、利用泰勒公式求e的值,直到最后一项小于10^(-7)为止。

泰勒公式式为:

e=1+1/1!+1/2!+......+1/n!

2、某部队举行一次军事演习,A、B两队约好在同一时间从相距100公里的各自驻地出发相向运动。A队的速度为10公里/小时,B队的速度为8公里/小时。一通讯员骑马从A地同时出发为行进中的两队传递消息,速度为60公里/小时。每遇一队立即折回驶向另一队,当两队距离小于0.5公里时,停下来不再传递消息。求此时通讯员跑了多少趟(从一队到另一队为一趟)?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值