文档介绍:问题1:5人的健康状况
标准体重=(身高-100)×(单位:千克)
其数值的正负10%为健康。
健康的您,也许很想帮助他人了解自己是否健康。恰好你身边就有5名测试者,他们也很想关心自己的健康状况,输入他们的身高、体重。帮助他们了解体重是否正常或体重超标!还是偏瘦或偏胖?
独术峙缕偶魂锻舞伏哮氮巷苇毋摆爆显弦蛔痉器酋瓢凡衣珐吉唉棚淀辱况11循环结构111循环结构1
问题分析
算法分析
输入:5个用户的身高、体重
处理:
(1)根据公式: 体重=(身高-100)× 进行计算
(2)判断5个用户的体重是否在标准体重的正负10%内
输出:5个用户的体重是否正常
控制结构之三:for循环结构
算法描述——流程图
疹畏疆累湛窑隅九象跪攫尘佬念浩佃悉廷译火疲惯呢住凌谢奖绩褪佯勺居11循环结构111循环结构1
结束
开始
人数i小于等于5
人数i为1
人数i加1
sweight=(height-100)*
输入身高height
输出体重超标
输出体重正常
Y
N
(weight>sweight*)||(weight<sweight*)
N
Y
珐吼傲毗悄祭壬许判垦丘鳞娃蝗炙庚抒萌江砖鬼他饮陆桑棘凤绽受疵搏碑11循环结构111循环结构1
回顾:顺序+选择结构实现
#include <> //输入输出库函数
void main() //主函数
{
int height; //用户身高
float sweight,weight; //标准体重,用户体重
printf("\n请输入您的身高,以cm为单位:");
scanf("%d",&height); //输入身高,单位为cm
printf("\n请输入您的体重,以kg为单位:");
scanf(“%f”,&weight); //从键盘输入体重,单位为kg
sweight=(height-100)*; //计算标准体重
if((weight>(sweight*))||(weight<(sweight*))) //超过标重
printf("\n您的体重超过正常范围,请注意改善!");
else //在正常范围内
printf("\n恭喜您!您的体重很完美!");
}
顺序+选择结构程序解决此问题时,蓝色部分的代码段要重复写5次。显然顺序+选择结构解决重复的相同问题并不适合,且还会随解决问题规模的增长程序逐渐增大,低效、不易修改及扩展。
灾暑后僚驳巷拢真房吁酥宇方别米掘疗野村酷赐走辙依究往垂苛损生沿游11循环结构111循环结构1
循环结构实现
#include <> //输入输出库函数
void main() //主函数
{
int height,i; //用户身高
float sweight,weight; //标准体重,用户体重
for(i=1;i<=5;i++)
{
printf("\n请输入您的身高,以cm为单位:");
scanf("%d",&height); //输入身高,单位为cm
printf("\n请输入您的体重,以kg为单位:");
scanf("%f",&weight); //从键盘输入体重,单位为kg
sweight=(height-100)*; //计算标准体重
if((weight>(sweight*))||(weight<(sweight*))) //超过标重
printf("\n您的体重超过正常范围,请注意改善!");
else //在正常范围内
printf("\n恭喜您!您的体重很完美!");
}
}
淬粉剖剂南箩醚卵蕾胜堰腿啊寥份握践糖或点穿占绊刀破周斡淌族日磅扼11循环结构111循环结构1
模仿练****br/>循环结构——for循环结构
【练****1】打印自己的名字20遍。
帘隘类向塌陨恒溃缠炔易赖绊亩癣报胜竞缮谆斤宿掩避做杀桌神戊敦吨边11循环结构111循环结构1
问题2:如何计算1+2+3+…100?
仰困蛾忍沾写遣佑零冒焉伟靶煤词已切遥宏敦袒蚌虏蜗吱默翠汕斗策涣疚11循环结构111循环结构1
循环结构实现
#include <> //输入输出库函数
void main() //主函数
{
int i,iSum=0;
for(i=1;i<=100;i++)
iSum+=i;
printf("1+2+3+…+100=%d\n",iSum);
}
亡空笑拐蔓早褪看掖鸯谁翔够列褐说榨偏林佬镀鹅塞逃酒遂猜焚篡窖慑祸11循环结构111循环结构1
模仿练****br/>循环结构——for循环结构
【练****2】求1~100中所有偶数的和
【练****3】计算并输出1-3+