c=pow(a,2); b=(int)c%10 c=(int)pow(a,2);b=c%10 两种结果不同,为什么?
来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/17 03:35:14
c=pow(a,2); b=(int)c%10 c=(int)pow(a,2);b=c%10 两种结果不同,为什么?
会不一样吗?
举个例子
当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
举个例子
当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
c=pow(a,2); b=(int)c%10 c=(int)pow(a,2);b=c%10 两种结果不同,为什么?
#include int f1(int a,int b)15,9 { int c; c=b%2; return a+c;
#include int func(int a,int b) { int c; c=a+b;return c; } ma
英语翻译int a;std::cin>>a;int b;std::cin>>b;int value=a;int pow=
#include func(int a,int b) {int c; c=a+b; return c;} main()
#include int max(int a,int b,int c){\x05a=a>b?a :b ;\x05retu
func(int a,int b) {int c; c=a+b; return(c); } main() {int x=
#include func(int a,int b){int c; c=a+b;returnc;}main(){intX
void fun(int *a,int *b) { int *c; c=a;a=b;b=c; } main() { in
c语言这段程序看不懂int fun(int a,int b,int c){ int t; t=(a>b)?(b>c?b:
int func(int x,int y ) { return(x+y) } main() {int a=1,b=2,c
mai() {int *a,*b,*c; a=b=c=(int*)malloc(sizeof(int)); *a=1;*