s=(int) sqrt(n)是什么意思

[复制链接]
查看11 | 回复3 | 2015-7-30 16:12:27 | 显示全部楼层 |阅读模式
意思是:先求出n的平方根,之后强制转换成整形赋值给s。大哥,你想干什么呀!你的这个程序得不到任何结果的。
回复

使用道具 举报

千问 | 2015-7-30 16:12:27 | 显示全部楼层
s=(int) sqrt(n)sqrt是开根号的意思~明白int是取整的意思综合起来就是先给n开根号,再取整~
回复

使用道具 举报

千问 | 2015-7-30 16:12:27 | 显示全部楼层
楼主的程序是想得到50到100之间的质数吧。s=(int) sqrt(n)的意思就是对n开平方后取整。这样做是为了提高计算效率,因为如果一个数不是质数的话,对它做因式分解,至少有一个因子是小于或者等于它的开方取整的,如果在小于或等于n的开方取整中没有找到它的因子,那么就可以判断n是质数。
回复

使用道具 举报

千问 | 2015-7-30 16:12:27 | 显示全部楼层
开平方根在转换成整形(消除小数点)(int) sqrt(n); 强制类型转换啊!sqrt是c语言的自带的函数!
回复

使用道具 举报

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

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行