用C语言编写开平方根程序的问题!
我今年开始学习C语言,前几天想编一个可以开平方根的程序,结果程序运行结果有误,找老师解决,老师给的答案是:Scanf函数出问题。下图有源程序和运行结果。他给的解决方法是用...
我今年开始学习C语言,前几天想编一个可以开平方根的程序,结果程序运行结果有误,找老师解决,老师给的答案是:Scanf函数出问题。下图有源程序和运行结果。他给的解决方法是用C++语言 cin>>a (对应的头文件是"iostream.h")替换掉源程序中的 scanf("%d",&a); 最后是可以运行了。但是,我还是想知道,到底我的程序有没有什么错误会导致输入结果出错,真的是Scanf函数出问题吗?我已经试过4台电脑了,如果不做修改,结果还是会出错。到底是为什么呢?求解!谢谢!
展开
5个回答
展开全部
C 语言 scanf()是有格式输入,输入格式与变量类型要相配。
double 型输入和输出 要用 %lf ( 小写字母 LF, L 是 长的意思,double 是 长浮点)
scanf("%lf",&a);
printf("%lf\n",a);
b=sqrt(a);
printf(b=%lf\n",b);
%f 用于 float 变量类型.
C++ 的 cin >> a; 它自动按 变量类型 转换 输入的值。所以不会 出错。
(附带建议)C++ 头文件 最好 用 国际标准化写法
#include <iostream>
using namespace std;
不用 #include <iostream.h>写法。尽管没错。
double 型输入和输出 要用 %lf ( 小写字母 LF, L 是 长的意思,double 是 长浮点)
scanf("%lf",&a);
printf("%lf\n",a);
b=sqrt(a);
printf(b=%lf\n",b);
%f 用于 float 变量类型.
C++ 的 cin >> a; 它自动按 变量类型 转换 输入的值。所以不会 出错。
(附带建议)C++ 头文件 最好 用 国际标准化写法
#include <iostream>
using namespace std;
不用 #include <iostream.h>写法。尽管没错。
展开全部
在C语言中,可以使用库函数sqrt来实现开根号计算。
1 头文件:math.h
2 声明:
double sqrt(double n);
3 功能:
将参数n开平方后,得到算数平方根返回。
4 调用形式:
sqrt(100);
为计算100的平方根。
1 头文件:math.h
2 声明:
double sqrt(double n);
3 功能:
将参数n开平方后,得到算数平方根返回。
4 调用形式:
sqrt(100);
为计算100的平方根。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用c++写吧,我对c语言不是很了解,不过你在求的是平方根啊,就应该输出的是两个值啊,是吧?
在输入和输出的时候应该用%d吧。只是一个求平方根的问题,就是调用一个函数sqrt()在有一个头文件就可以了啊!
在输入和输出的时候应该用%d吧。只是一个求平方根的问题,就是调用一个函数sqrt()在有一个头文件就可以了啊!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
注意:既然是开平方,scanf输入的就该是无符号型的也就是非负的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2011-03-17
展开全部
double 要用 %lf
float 是 %f
float 是 %f
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询