C语言while、do-while、for循环课程5
课程3中,提到C语言基本语句分为:数据定义语句,数据处理语句
数据处理语句又可分为:表达式语句,函数调用语句,空语句(;,复合语句,流程控制语句。
流程控制:指程序代码执行的顺序。流程的分类:顺序、选择、循环。
C语言的循环结构通过三种语句来实现,即while、do-while、forWhile语句的一般形式while(循环条件表达式循环体语句;
功能:当循环条件表达式为真,执行循环体语句,执行完了,再判断条件表达式是否为真,为真,则再执行,直到条件表达式为假时,退出while循环。
实例1:用while语句求1~100的累加和。
#include//C语言编译预处理命令,文件包含为stdio.h
voidmain(//至少有一个用main(命名的主函数,返回值为void无值类型{
inti=1,sum=0;/*初始化循环,定义变量i和累加器sum,定义和之前,累加器清零*/
while(i<=100
{
sum+=i;//sum+=i是一个复合赋值运算符,等价于sun=sun+i;i++;
}
printf("1+2+3+...+100=%d ",sum;//输出十进制数,1加到100累加器的和}
MicrosoftVisualC++6.0运行结果
使用while循环时,一定要对循环条件表达式中出现的变量提前赋值,并在循环体内修改有关变量的值,以使循环能趋于终止。
While循环为当型循环,do-while循环也叫直到型循环。
do-while语句的一般形式为:
do
{
循环体语句}while(
循环条件表达式
实例2:用do-while编制一个求n!的程序,n的值由键盘输入。
#include
voidmain(
{inti=1,n,p=1;
printf("请从键盘输入一个数,进行连乘积: ";
scanf("%d",&n;
do
{p=p*i;
i++;
}while(i<=n;
printf("连乘积的结果为p=n!:%d ",p;
}
分析:此程序,先定义三个变量i、n、p,p从p乘1开始执行,再i进行自增1,循环体中的语句执行完毕后,判断while的循环条件表达式,当i自增1为2时,看2是否<=输入的n值,若为真,则继续返回do循环,直到i自增的值比n大,则退出循环。
do-while主要用于人机交互,do-while循环是先执行后判断,do里面的循环体至少被执行一次。区别于while是先判断循环条件表达式,后执行。
for循环也叫步长型循环
一般格式:for(表达式1;表达式2;表达式3循环体语句;
功能:先执行表达式1,再执行表达式2,如果表达式2的值为真,就执行循环体语句,最后执行表达式3.完成一次循环后,从表达式2执行,直到表达式2为假,退出循环。
实例3:参考实例1,用while求1~100的累加和,现在用for语句求1~100的累
加和。
#include
intmain(void
{
inti;intsum=0;
/*初始化循环,定义变量i
和累加器sum,定义和之前,累加器清零*/
for(i=1;i<=100;i++
{
sum=sum+i;
}
printf("sum=%d ",sum;
return0;
}
实例4:爱因斯坦的`阶梯问题:有一个长阶梯,若每步上2阶,最后剩1阶;若每步上3阶,最后剩2阶;若每步上5阶,最后剩4阶;若每步上6阶,最后剩5阶;只有每步上7阶,最后刚好一阶也不剩。请问该阶梯至少有多少阶。编写一个C程序解决该问题。
#include
main(
{intx;
for(x=7;;x+=7
if(x%3==2&&x%5==4&&x%6==5
break;
printf("Thenumberoftheladdersis:%d ",x;
}
分析:发现x一定是7的整数倍,可以依次递增地求出7的整数倍的值(7*1、7*2、7*3……),每求出一值,就用该值与2、3、5、6进行取模运算,最先得到的满足上述5个方程式的x值即为本题的答案。
用while语句,简单快速实现爱因斯坦的阶梯问题
#include
intmain(
{
inti=1;/*i为所设的阶梯数*/
while(!((i%2==1&&(i%3==2&&(i%5==4&&(i%6==5&&(i%7==0
++i;/*满足一组同余式的判别*/
(1 模版1
Different people have different views on_____.Some people think that_____,whereas others aegue that __________.
As far as I am concerned, I agree with the opinion that ___________.For one thing,I firmly believe that ___________.For another,_____________.Just think of________,who/which_______.
Taking all these factors into consideration,we may safely come to the conclusion that______.Only if_______can we _______,just as the saying goes,________________.
(2模版2
In recent years there have been many reports of ________.It turns a new chapter of _________in China,and will have far-reaching effects in the forthcoming years.
The biggest benefit,in my eyes,is that_______.In addition,_______.Finally,______________.
Apart from the benefits mentioned above,we should also face several unavoidable challenges.In the first place,_____________.In the second place,________.What’s more,_______________.In summary,we should_______________.
(3模版3
Nowadays more and more ______are commonly and widely used in everyday life,ranging from __________to_____________.
The popularity of _______will have a great influence on ______.On the one hand,_________.On the other hand,__________.
To conclude,____________are just like a double-edged sword.With them we may________.However,one point should be kept in mind that we should make sensible use,always being a master instead of slaving of them.
小升初复习练习(一)改写句子
一、陈述句改为反问句。
方法:
1、在句子中加上难道+(—)不+吗?
怎么+(—)不+呢?
怎能+(—)不+呢?
2、读改好的反问句,要求句子通顺,意思与原句相同。
(特别注意反问句后面要有“?”号)
小练习:
1、这样气魄雄伟的工程,在世界史上是一个伟大的奇迹。
2、十万枝箭三天是造不成的。
二、反问句改为陈述句。
方法:
1、删除句子中的难道+(—)不+吗?
怎么+(—)不+呢?
怎能+(—)不+呢?
2.问号改为句号。
3.读改好的陈述句,要求句子通顺,意思与原句相同。
小练习:
1.这怎么忍受得了呢?
2.在阳光下,大片青松的边沿闪动着白桦的银裙,不是像海边的浪花吗?
3、人与山的关系日益密切,怎能不使我们感到亲切、舒服呢?
三、缩句。
方法:
1、找出主要动词。
2、删除句子中“的”“地”前面的,以及“在”“从”
“得”后的修饰成分。
3、看句子是否还含有其它修饰成分,若有,删去。
4、读改好的句子,检查句子是否通顺,句子意思是否与原句意思一致,句子是否保留了“名+动”或“名+动+名”的形式。
小练习:
1.白茫茫的水上没有一点儿波浪。
2.两山之间往往流动着清可见底的小河。
3.听到这个消息,王明高兴得跳起来。
4.和老师的一次谈话,更加激发了我的想象力。
四、直接语句改为间接语句(第三人称叙述)一般方法:
1、提示语部分基本不变
2、将[:“”]改为[,]
3、若直接语句中只出现了一个人称,而且这个人称就是指的是提示语中的人,只要将这个人称改为“他(她)”
若直接语句中出现了两个不同的人称,而且这两个不同的人称分别指的是提示语中的两个人,那么,要将
代表提示语的第二个人的人称用提示语中的名称代替,将代表提示语中第一个人的人称用“他(她)”代替
4、读改好的句子,检查句子是否通顺,句子意思是否与原句一致。
小练习:
1.贝多芬说:“我是来弹一首曲子给这位姑娘听的。”
2.齐白石对***说:“如果您喜欢这种笔墨,我回去以后,再给您重画。”
3.母亲对我说:“你说它是怎么长的?”
4.李明说:“我要努力学习,争取早日赶上大家。”
5.王老师对小军说:“你的生日我知道了。”
6.我对外祖父说:“外公,您也回祖国去吧!”
改写句子练习
1.教室里传出一阵阵欢笑声。(改成夸张句______________________________________________
___________________________。
2.薄雾笼罩着大山。(改为拟人句
______________________________________________
___________________________。
3.游人不解春何在?只捡儿童多处行。(用上恰当的
关联词连成一句话
______________________________________________
___________________________。
4.友谊是一壶茶,细品慢咽有滋味;友谊是一杯水,君子之交淡如水。(请根据你对友谊的理解,仿写一句______________________________________
_________________。
5.缩句:①我目不转睛地望着太阳从东方升起的地
方。___________________________
②我们爬上半山的五松亭,看见在那恣态奇特的古松下整理挑儿的正是那
个挑山工。
_____________________________________________________________________
____。
6.把两句话用关联词语合为一句话。
我们是为人民服务的。我们有缺
点不怕别人批评指出。
______________________________________________
________________________。
7.改为转述句:小青石得意地想:“我就要到都
市里去了。我将成为发簪和纽扣
呢?”_________________________________________
______________________________。
8.反问句改为陈述句:这比山高比海还深的情谊,我
们怎么会忘
记?
______________________________________________
__________________________。
今晚再看一遍《美女也野兽》,忽然从其中看出与基耶斯洛夫斯基的《白》有几分类似的主题——平等:如果粗鲁的王子不曾因没有爱心而被惩罚,变成野兽,那么,他可能爱上贝尔么?他们可能在一起吗?
粗鲁的王子,即使他从来不懂得善待他人,也不懂爱为何物,他仍旧有骄傲的理由——他是一个华贵显赫的王子。
可是温柔的野兽,即使他再绅士,心中充满爱,他仍然有自卑的理由——他是一只外表丑陋的野兽。
而与此相对,贝尔的身份是不变的——一个美丽善良怀抱梦想的贫家女。
然而我们可以大胆假设一点,如果王子不曾被施魔法,那么,即使贝尔再美丽再善良,王子未必会爱上她——因为我们的前提是粗鲁的王子根本不懂得什么是爱。
但是在他身份垂直下降,直到变为一只面目狰狞的怪兽的时候,他却能够以一种低姿态,甚至自卑的姿势,来欣赏一个过去可能连见他的面也不配的贫家女——而此时她正是他的救世主。
基氏电影《白》也是如此。在电影的开头,由于生理障碍,世俗的天枰和双方心理的天枰都明显偏向于女主角。
但是随着情节发展,男主角像胡汉三一样又回来了,而且还带回了显赫的资产,过去的生理障碍也一并消失,重振雄风。
此时的天枰转换了方向,慢慢向男主角倾斜。就连曾经绝情离开他的女主角,也重新爱上了他。
虽然在电影《白》中,这是一次人为的精巧的报复,但是和《美女与野兽》一样,它告诉了我们一个古老的真理:爱情并不是基于无有凭空产生的,爱情中,掺杂着太多复杂的现实因素,有关身份的悬殊,有关财富的多少,有关身体健康与否,有关相貌美丑。
换句话说,门当户对是古老智慧的结晶,它仍然能够用于指导现代生活,并且在人类本性发生扭转之前绝不过时。门当户对的婚姻和爱情实在是一种理想状态,是一种双赢的结合。
所以,与其说,是美丽的贝尔使得王子懂得了爱,变得温柔仁慈和绅士了,不如说是天枰的倾斜使得粗鲁的王子变得温柔谦卑——当然,美女的力量也不容否定,只是,这影响实在不足以使一个人转变本性。
同样讨论此主题的电影,还有金基德的《坏小子》,那是另一个貌似诡异离奇但又完全符合实际逻辑的世界。
对此主题浅显的理解到此为止,以后若有再加补充。
关于题目给出的问题,我的回答是:我要一个温柔的野兽,因为我是小弱弱,(*^__^* 嘻嘻……
© 2022 xuexicn.net,All Rights Reserved.