分支循环练习题

1 ,打印1000到2000之间的闰年

  明白闰年的定义:能被4整除而不能被100整除的数或者能被400整除的数字(注意是或者!!!)

(看代码的时候可以忽略count计数,我这是为了方便看两种方法结果)

0f55db9c310e4a04b5646156f23ede38.png

 这是十分复杂的,面试官问你还可以精炼一点吗,你应该说 of course

3c0ffa2d787c4febb8baa509abd6499e.png

结果一模一样,简化了不止半点~

两个& 是并且,两个|是或者的意思

2 , 打印100到200之间的素数(素数是只能被1和自身整除的数)

首先得有100到200之前的数,定义这个数为i   for (i = 100; i < 200; i++)                            思路:i不能整除2到i-1之间的数                      定义这个数为m: for (m = 2; m < i; m++)       用i%m==0判断i是否为素数就ok啦

111ec9f53fd54306bfb20acaf152ca73.png

还有一种方法,先假设i就是素数(int flag=1),用if语句判断i是否可以被m整除,可以就改变flag=0,不打印,反之打印的数就是素数

a4a951a9c3804f9383690d0f49a7eaf2.png

 这个方法还可以再简化运算,如果说  i➗小于等于 i的开平方数都没有整除,那它也一定是素数,这个方法过程没有简化,但却简化了电脑运算

09224daffcfd4d128266901ae602c98a.png

 我们已经知道偶数一定不是素数,直接在奇数中筛选素数让运算更简单

14e659e0783242b2b74db7134d9d4775.png

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小兰爱吃肉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值