项目3 C#程序的流程控制 任务3.3-循环结构语句(课件)-《C#程序设计基础》(河海大学出版社)同步精品课堂
|
13页
|
143人阅读
|
0人下载
精品
内容正文:
C#
项目3C#程序的流程控制
制作:孔艳丽
2024年2月
2010版
C#
项目3C#程序的流程控制
赋值语句
任务3.1求平均值
输入输出语句
复合语句
if.else语句
任务3.2季节判断
switch.case语句
for语句
项目3C#程序的流程控制
任务3.3倒计时
while语句
do.whilei语句
goto语句
breaki语句
任务3.4生日派对安排
continue语句
return语句
2010版
C#
任务3.3倒计时
循环结构用于重复执行一些语句。重复执行的语句被称为循环体。在C#中,常见的循环语句
有for语句、while语句和do.whilej语句。
循环次数已知
for循环
循环语句
while循环
一
先判断后执行
循环次数未知
do.while循环一
先执行后判断
2010版
C#
任务3.3倒计时
3.3.1for语句
fo语句是C#中最常见的循环语句,一般用于循环次数已知的情况。
【格式】
初始化表达式
for(<初始化表达式>;<循环条件>;<迭代表达式>)
循环条件
false
{
循环体;
循环体
for语句的执行顺序如下:
迭代表达式
①执行“初始化表达式”,即对循环变量赋初值;
②执行"循环条件”,判断是否成立,即循环条件为true,则执行循环体;
③执行完循环体后,计算“迭代表达式”,修改循环变量的值,然后回到第②步继续执行;
④若循环条件不成立,侧直接跳出循环。
2010版
C#
任务3.3倒计时
3.3.1for语句
【例3-6】输出1-10的整数。
int i;
Console.WriteLine("输出1-10个数字:");
for(i=1;i<=10;it+)
file:///D:/Bai.
{
输出1-10个数字:
12345678910
Console.Write(i+"");
Console.ReadLine();
2010版
C#
任务3.3倒计时
3.3.1for语句
【例3-7】求出100-999之间的所有的水仙花数。
int n,i,j,k,t=0;
for(n=100;n<=999;n+)
分析:如果一个三位数的各位数字的立方和等于
{
该数,则称这个三位数为“水仙花数”。例如153是
i=n/100;
/取数的百位数
j=(n/10)%10;
/取数的十位数
一个水仙花数,153=1^3+5∧3+3∧3。请编写程序。
k=n%10;
/取数的个位数
if (n==i*i*i+j*j*j+k*k*k)
{
Console.WriteLine("(O)=[1)03+(2)03+[3)03",n,i,j,k);
file:///D:/BaiduNetd...
t+=1;
153=13+53+3^3
}
370=33+73+03
371=3^3+7^3+13
}
407=4^3+0^3+73
Console.WriteLine("100到999之间共有:"+t+"个水仙花数。");
100到999之间共有:4个水仙花数。
Console.ReadLine();
2010版
C#
任务3.3倒计时
3.3.2 whilei语句
当循环次数未知时,可以使用whilei语句。while语句根据循环条件,执行零次或多次循环。
【格式】
while(表达式)
{
表达式
false
循环体;
Ltrue
【说明】
循环体
在while语句中,先计算“表达式”的值,若其值为
true,则反复执行循环体;若其值为false,则停止循环。
2010版
C#
任务3.3倒计时
3.3.2 while语句
【例3-8】请编写程序,求s的值,S=1+2+3+..+10
分析:这是一个求累加和的程序。累加就是在原有和的基础上每次加1个数,存放累加和的变
量通常称为累加器,累加器的初值一般为0。
Console.WriteLine("s=1+2+3+...+10");
inti=1,s=0;
while (i<=10)
国file.
▣
{
求s=1+2+3+..+10
s+=i访
s的值为:55
i++;
}
Console.WriteLine("s的值为:{o",s;
Console.ReadLine():
2010版
C#
3.3.2 while语句
任务3.3倒计时
【例3-9】已知圆周率((P)的计算公式是=1-+}+,请编写程序,求P的值(要求精
确到<0.00000001)。
inti=1;/∥初始化变量i为1
double sum=0,n=1;/∥初始化变量sum为0,n为1
double pi;∥声明变量pi用于存储计算后的pI值
∥循环条件:当1.0/n的值大于等于0.00000001时执行循环
while(1.0/n>=0.00000001)
if(i%2!=0)/∥如果i为奇数
sum+=1.0/n;/则sum加上1.0/n
file:///D:/BaiduNetdisk...
口
}
else
PI的近似值是:3.14159263359025
sum=1.0/n;/∥如果i为偶数,则sum减去1.0/n
}
i++;/i自增
}
n=2*i-1;/∥更新n的值为2*i-1
pi=4*sum;∥计算PI的近似值
Console.WriteLine("pI的近似值是:"+pi;/∥输出计算后的PI的近似值
Console.ReadLine();
2010版
C#
任务3.3倒计时
3.3.3do..while语句
do..while语句也用于循环次数未知的情况。但与while语句不同,while语句是先判断循环条件
是否成立,再执行循环体;do.whilei语句是先执行循环体,再判断循环条件是否成立。
格式
【说明】
在do.while语句中,先执行循环
循环体
do
体,然后计算“表达式”的值。若表达
式的值为true,则转到do语句继续执
true
表达式
循环体:
}while(表达式);
行循环体;若表达式的值为false,则
false
结束循环。
2010版
资源预览图