鱼C论坛

 找回密码
 立即注册
查看: 556|回复: 10

[已解决]C语题的一点小疑惑

[复制链接]
发表于 2020-4-22 18:41:05 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
想问一下绿色圈的地方为什么是大于等于k+1,不应该是k吗?
希望大佬们可以帮忙看一下,捋一下过程。
最佳答案
2020-4-22 19:29:02
一颗大棗 发表于 2020-4-22 19:12
还有一点我不知道我理解的对不对,这里使用根号来缩小范围的原理是因为一个数若是取根号后取余为零的话, ...

是这样的
程序把所有小于 n 的开根 的数 除以 n,如果其中有一个数能把 n 整除,那么 n 就不是素数
2020-04-22 (16)_wps图片.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-4-22 18:43:46 | 显示全部楼层
因为是 >= ,如果换成 > 那应该就是 k 不是 k+1 了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-22 18:53:53 | 显示全部楼层
liuzhengyuan 发表于 2020-4-22 18:43
因为是 >= ,如果换成 > 那应该就是 k 不是 k+1 了

谢谢您,大于k我可以理解,但我想不通为什么大于等于k+1。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-22 18:56:02 | 显示全部楼层
一颗大棗 发表于 2020-4-22 18:53
谢谢您,大于k我可以理解,但我想不通为什么大于等于k+1。

大于 k, 在整数范围的前提下和 大于等于 k+1 的意思是一样的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-22 18:57:42 | 显示全部楼层
liuzhengyuan 发表于 2020-4-22 18:43
因为是 >= ,如果换成 > 那应该就是 k 不是 k+1 了

我对程序的理解是假如我输入n=11,那k的值大概是三点多。最后i 的值应该是4。是这样理解的吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-22 19:00:15 | 显示全部楼层
一颗大棗 发表于 2020-4-22 18:57
我对程序的理解是假如我输入n=11,那k的值大概是三点多。最后i 的值应该是4。是这样理解的吗?

对的(你可以在循环结束的时候把 i 的值输出,验证一下)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-22 19:09:56 | 显示全部楼层
liuzhengyuan 发表于 2020-4-22 19:00
对的(你可以在循环结束的时候把 i 的值输出,验证一下)

这样的话,最后i的值为4,k+1的值就是四点多,那就相当于4>=4点多的一个数?(现在有点晕也不知道说的对不对)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-22 19:12:31 | 显示全部楼层
liuzhengyuan 发表于 2020-4-22 19:00
对的(你可以在循环结束的时候把 i 的值输出,验证一下)

还有一点我不知道我理解的对不对,这里使用根号来缩小范围的原理是因为一个数若是取根号后取余为零的话,则这个数取余也一定为零?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-22 19:26:31 | 显示全部楼层
本帖最后由 liuzhengyuan 于 2020-4-22 19:30 编辑
一颗大棗 发表于 2020-4-22 19:09
这样的话,最后i的值为4,k+1的值就是四点多,那就相当于4>=4点多的一个数?(现在有点晕也不知道说的对 ...


n 是整形(int)所以他会用“去尾法”,把小数去掉的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-22 19:29:02 | 显示全部楼层    本楼为最佳答案   
一颗大棗 发表于 2020-4-22 19:12
还有一点我不知道我理解的对不对,这里使用根号来缩小范围的原理是因为一个数若是取根号后取余为零的话, ...

是这样的
程序把所有小于 n 的开根 的数 除以 n,如果其中有一个数能把 n 整除,那么 n 就不是素数
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-22 19:38:40 | 显示全部楼层
liuzhengyuan 发表于 2020-4-22 19:29
是这样的
程序把所有小于 n 的开根 的数 除以 n,如果其中有一个数能把 n 整除,那么 n 就不是素数

感谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-28 04:18

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表