扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
1,for循环的条件错了,应该是大于号。
站在用户的角度思考问题,与客户深入沟通,找到肃宁网站设计与肃宁网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都网站制作、网站建设、企业官网、英文网站、手机端网站、网站推广、域名注册、雅安服务器托管、企业邮箱。业务覆盖肃宁地区。
2,math.h中的函数用的时候要慎重,这些都是用来做复杂的数学计算的,时间开销都很大。
3,求余只能对整数操作,这点是必然的。但浮点数是可以转换成整数的,可以用强制类型转换,或者设一个整型的中间变量。注意浮点数转整数的时候是舍入的。当然,这里只是说这个事,不建议这样做。
建议的做法有两个,简单点延用原有的思路,可以自己写一个求10的k次方的函数,用整数进行运算。
int pow10n( int k )
{
r = 1;
for(i=0; i k ; ++i)
r *= 10;
return r;
}
复杂点的做法是把求10的k次方这个运算和拆分n的循环嵌在一起,这个应该是正统的做法。
for( k=0; k3; ++k )
{
n %= 10;
}
当然,这个算法得到的结果是逆序的,4、3、2、1
这有两个办法,一个是把结果顺序放到数组中,输出的时候把顺序倒过来,说白了是用中间变量。
另外一个办法是用栈,或者用递归(本质上也是用的栈),直接按逆序出结果。当然,这个方法对初学者有点难度了。
extern float pow(float x, float y)
用法:#include math.h
功能:计算x的y次幂。
说明:x应大于零,返回幂指数的结果。
举例:
// pow.c
#include stdlib.h
#include math.h
#include conio.h
void main()
{
printf("4^5=%f",pow(4.,5.));
getchar();
}
相关函数:pow10
C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
可以用在math.h头文件中声明的pow()函数求,例如:
要求a的b次方,就用pow(a,b)即可。
^符号在C中是位异或操作符,不用于求乘方。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流