hyqd.net
当前位置:首页 >> sqrt函数输出为0 >>

sqrt函数输出为0

sqrt的返回值类型是double型,你输出的时候用%d当然结果是错的了,可以试试类型转换,把最后一个printf语句改成如下:printf("%d\n",(int)sqrt(n));

因为你在main()测试的用例全是整数啊,你换个double型的试试看 如下#include<iostream> using namespace std; double sqrt(double f);//L2 void main(){ cout<<sqrt(12.3)<<endl;//测试 用例为 12.3 } double sqrt(double f) { double F=f*f; return F; }

scanf("%d",&m);float类型的变量用scanf("%f",&m);

c语言中sqrt函数是指的开方运算函数,得到的结果是函数变量(可以是数值,也可以是变量名)的算术平方根.如输入m=sqrt(4);,则输出结果为2.或者对于变量a有赋值9,,则输入m=sqrt(9),输出结果为3. 需要注意的是以下三点:1. sqrt函数运行的是结果是算术平方根,即不能运算处负数值,也不能输出虚数结果.如需要得到算术平方根中的负数值,则应该在sqrt函数前添加负号.2. sqrt函数的参数必须是非负数值,如果是负数值,则输出会报错,即数值无效;如果参数是未定义的非数字变量,则按回车后也会报错,即变量名有误.3. sqrt函数的计算精度与c语言设置的精度有关,可以通过设置更改精度.

功 能: 一个非负实数的平方根 函数原型: 在VC6.0中的math.h头文件的函数原型为double sqrt(double); 说明:sqrt系Square Root Calculations(平方根计算),通过这种运算可以考验CPU的浮点能力.扩展资料:C++#include <iostream> //这

scanf ("%lf",&x); 这一句写错了.

因为1既不是质数也不是合数.所以2开始.判断一个数是否是素数,只要判断其能否被2到sqrt(x)整除.因为如果x的一个因素大于sqrt(x),那么与其对应的那个因素必定小于sqrt(x),所以只要判断其中的一半就可以了,即2=<i<=sqrt(x)(如果x不能被任意一个i整除,就说该数是质数)

是数据类型的原因,可以将double必为float类型,或者将语句scanf("%f",&a); 修改为:scanf("%lf",&a); 即可.

当然是正,求得的都是正平方根,没有负的.

SQRT是平方根SQRT2就是根号2 大写的SQRT 只能输出根号2 假如想输出别的数字的平方根 如4的平方根 用小写 sqrt(4)=2

网站首页 | 网站地图
All rights reserved Powered by www.hyqd.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com