欢迎来到天天文库
浏览记录
ID:21306645
大小:392.50 KB
页数:80页
时间:2018-10-21
《第四章循环结构》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第四章循环结构第一节for语句第二节while语句第三节do-while语句第四节循环嵌套第一节for语句一、语句格式格式1说明:语句1是for循环语句的循环体,它将在满足条件的情况下被重复执行。格式2说明:循环体部分由多个语句构成,应由一对花括号括起来,构成一个语句块的形式程序风格提示:写for循环语句时,循环体的语句相对于for缩进两格。第一节for语句二、语句执行过程for语句的执行过程可由以下4步来描述。(1)执行“控制变量初始化语句”,使控制变量获得一个初值。(2)判断控制变量是否满足“条件表达式”,若满足条件则执行一遍循环体,否则结束整个for语句
2、,继续执行for循环下面的句子。(3)根据增量表达式,计算出控制变量所得到的新值(4)自动转到第(2)步。第一节for语句三、语句格式举例(1)将控制变量从1变到100,增量为1for(i=1;i<=100;++i)(2)将控制变量从100变到1,增量为-1for(i=100;i>=1;--i)(3)控制变量从7变到77,增量为7for(i=7;i<=77;i+=7)(4)控制变量从20变到2,增量为-2for(inti=20;i>=2;i-=2)(5)按所示数列改变控制变量值:99、88、77、66、55、44、33、22、11、0,增量为-11for(in
3、tj=99;j>=0;j-=11)(6)控制变量i和j共同进行循环控制,i从1变到99,j从2变到100,增量均为2。for(inti=1,j=2;i<=99&&j<=100;i+=2,j+=2)需要说明的是:可以在for循环“控制变量初始化语句”中声明变量(如上面最后3个例子),这些变量只在for循环结构中有效,离开了该for结构,变量就无效了。第一节for语句例4.1输出1—100之间所有偶数。#includeusingnamespacestd;intmain(){for(inti=2;i<=100;i+=2)cout<4、eturn0;}例4.2利用for循环,计算输出1+2+…+100的和#includeusingnamespacestd;intmain(){intsum=0;for(inti=1;i<=100;++i)sum+=i;cout<usingnamespacestd;intmain(){longlongs;//Noip2010开始C++语言中longlong类型允许使用intn;//n不能定义为longlo5、ng,否则for语句死循环s=1;scanf("%d",&n);for(inti=1;i<=n;++i)//若s定义为int,当n=13时s的值就溢出了s*=i;printf("%lld",s);//低版本也可用printf("%I64d",s)return0;}【说明】:当n>=13时,s值超过了int类型的表示范围。还有一种比int更大的类型,称为longlong,它的表示范围是-263~263-1,比-1019~1019略窄,而我们一直使用的int范围是-231~231-1,只比-2*109~2*109略宽。输入输出longlong也可以借助于p6、rintf和scanf语句,但对应的占位符却是和平台与编译器相关的:在linux中,gcc很统一的用%lld;在windows中,MinGW的gcc和VC6可用%I64d;高版本编译器下windows可以使用%lld。第一节for语句例4.4利用for循环,分别计算1—100中奇数的和、偶数的和。#includeusingnamespacestd;intmain(){intjssum=0;intossum=0;for(intjs=1,os=2;js<=99&&os<=100;js+=2,os+=2){jssum+=js;ossum+=os;7、}cout<<"thesumofoddnumbers1to100is:"<8、为15到25。输出:输出一行,该行包含
4、eturn0;}例4.2利用for循环,计算输出1+2+…+100的和#includeusingnamespacestd;intmain(){intsum=0;for(inti=1;i<=100;++i)sum+=i;cout<usingnamespacestd;intmain(){longlongs;//Noip2010开始C++语言中longlong类型允许使用intn;//n不能定义为longlo
5、ng,否则for语句死循环s=1;scanf("%d",&n);for(inti=1;i<=n;++i)//若s定义为int,当n=13时s的值就溢出了s*=i;printf("%lld",s);//低版本也可用printf("%I64d",s)return0;}【说明】:当n>=13时,s值超过了int类型的表示范围。还有一种比int更大的类型,称为longlong,它的表示范围是-263~263-1,比-1019~1019略窄,而我们一直使用的int范围是-231~231-1,只比-2*109~2*109略宽。输入输出longlong也可以借助于p
6、rintf和scanf语句,但对应的占位符却是和平台与编译器相关的:在linux中,gcc很统一的用%lld;在windows中,MinGW的gcc和VC6可用%I64d;高版本编译器下windows可以使用%lld。第一节for语句例4.4利用for循环,分别计算1—100中奇数的和、偶数的和。#includeusingnamespacestd;intmain(){intjssum=0;intossum=0;for(intjs=1,os=2;js<=99&&os<=100;js+=2,os+=2){jssum+=js;ossum+=os;
7、}cout<<"thesumofoddnumbers1to100is:"<8、为15到25。输出:输出一行,该行包含
8、为15到25。输出:输出一行,该行包含
此文档下载收益归作者所有