初级天翼
很多大佬认为我的课堂不大好,但是,我的课堂只适用于低于我等级的人,你们都比我厉害请绕过,谢谢,不要喷~
下面进入正题:
今天带来一个超级简单的东东:while~~~~~~~~~~~
(你会认为是while?不可能,是do-while)
do-while主要格式:
功能:重复执行循环体,直到条件表达式的值为0。与while相比,do-while循环是先执行循环体,后判断表达式的当型循环。
例题[1.1] 对于给定的自然数n,求使1+2+3+4+5+......+i>=n成立的最小值i
分析:这个题目的实质是对一个有规律的数值序列求和。但是,数值序列的个数不能直接确定,我们需要以序列和的值作为结束的条件。因此,我们能做的只是不断地累加,直到序列之和>=n为止。
代码示例:
作业部分:今天没有作业,不然又要被喷了~但有个问题:程序最后为什么要减1?(第一个打上来的拿豆豆,因为比较简单,所以只有10个)
新手天翼
虽然简单的要命,但是为了几个豆,我还是拼了
这里先要反驳一下其他人的观点,
如果把i的初始值赋为0,那第一次循环跟把i的初始值赋为1是一样的,不信自己分析一下程序运行过程
根据分析,do-while循环中每次都会先把i的值累加给sum,但是,根据计算,第一次累加时i原本为1,sum为0
累加后i为2,sum为1。
(为方便计算,我们假设n为10)
接下来,第4次循环,此时i已是4,而sum是10。上次循环时由于n不大于sum,所以还会再循环一次。
结果就是i又累加了一次(不止样例,由于直到型循环的特性,对于这道题只有输出i-1才是最优解)
导致结果又多了1
所以输出时结果需减1
(求关注,求采纳,求点赞)
(本人水平属于基础扎实,高级不会类型,对于较难问题可能看法不正确或错失重要线索,请见谅)
中级光能
你好棒哦~~~没事来小王课堂康康
曹砚青在2020-07-02 13:41:15追加了内容
ps:你的头像是蓝轩宇吧。我有一个霍雨浩的头像,要不要?
新手天翼
你这个过于简单 没有技术含量 还是高级一点比较好
王子逸在2020-06-26 19:54:43追加了内容
没错 我和龙舟一个班
但我已经自学完了《c++游戏编程》
王子逸在2020-06-26 19:56:24追加了内容
@李泽远 《青春猪头少年不会梦到兔女郎学姐》