printf("变量radius地址是%d\n",&radius);是合法的,输出radius在内存中的地址

我晕!
程序代码:# include <math.h>
# define pl 3.14
int main()
{
int radius;
float circum;
radius = 2;
circum = 2*pl*radius;
printf("变量radius地址是%p\n", &radius);
printf("半径开方值是%f\n", sqrt(double(radius)));
printf("半径是%d,周长是%f\n", radius, circum);
return 0;
}
/*
变量radius地址是0022FF44
半径开方值是1.414214
半径是2,周长是12.560000
*/多多上机