c=pow(a,2); b=(int)c%10 c=(int)pow(a,2);b=c%10 两种结果不同,为什么?

学习 时间:2026-04-07 20:36:12 阅读:9768
c=pow(a,2); b=(int)c%10 c=(int)pow(a,2);b=c%10 两种结果不同,为什么?

最佳回答

慈祥的小蚂蚁

等待的发箍

2026-04-07 20:36:12

会不一样吗?
举个例子
当a=12。5。
c=pow(a,2) 即c的值为156。25,其为double型
再b=(int)c%10 是先对c进行转换即c值为156(向零取整)再取余
即b=6;
分析下一个c=(int)pow(a,2);因为(int) c已经被转换了,即c为156
明显b=c%10的值为6。
再问: 确实不一样,我用它算同构数,10以内正确,但是超过10后平方数就会少1……
再答: 原来是算同构数 可以用这个编程 #include #include using namespace std; void main() { int i,a; for(i=2;i

最新回答共有2条回答

  • 开放的小海豚
    回复
    2026-04-07 20:36:12

    会不一样吗?举个例子当a=12。5。c=pow(a,2) 即c的值为156。25,其为double型再b=(int)c%10 是先对c进行转换即c值为156(向零取整)再取余即b=6;分析下一个c=(int)pow(a,2);因为(int) c已经被转换了,即c为156明显b=c%10的值为6。 再问: 确实不一样,我用它算同构数,10以内正确,但是超过10后平方数就会少1…… 再答: 原来是算同构数 可以用这个编程 #include #include using namespace std; void main() { int i,a; for(i=2;i

上一篇 咏雪 请写出两个形容飞雪的好比喻来

下一篇 房子设计图