for循环拥有两种类型:穷举和迭代
for穷举:把所有可能的情况都走一遍,使用if条件筛选出来满足条件的情况。
1.单位给发了一张150元购物卡,拿着到超市买三类洗化用品。洗发水15元,香皂2元,牙刷5元。求刚好花完150元,有多少种买法,每种买法都是各买几样?每种东西至少买一样
for迭代:
从初始情况按照规律不断求解中间情况,最终推导出结果。
2.五个小朋友排成一队,问第一个多大了,第一个说比第二个大两岁,问第二个多大了,第二个说比第三个大两岁。。。以此类推,问第5个小朋友,说自己3岁了。问第一个小朋友几岁了?
3.纸张可以无限次对折,纸张厚度为0.08毫米。问多少次对折至少可以超过8848?
注意毫米和米之间的换算!
while 循环
其实是for循环的变形写法
for(int i = 1; i<=100;i++)
{循环体}
写成while的形式:(把for里面的初始条件i=1放到外面;状态改变i++放到循环体中)
int i=1
while(i<=100)
{循环体;i++;}
4.找出100以内与7有关的数并打印,用while循环来做
(1)个位数是7 a%10=7
(2)十位数是7 a/10=7
(3)7的倍数 a%7==0
5.一个游戏,前20关使每一关自身的分数,21-30关每一关是10份,31-40关,每一关是20分,41-49关,每一关是30, 50关,是100分
输入你现在闯到的关卡数,求你现在拥有的总分数
需要判断你输入的关卡数是不是50之内
用while来做