提示-type 'float' unexpected 怎么整?

大鱼炖海棠 2011-09-28 03:09:03
void main()
{
int i,x,y;
for(i=0;;i++)
{
x=float sqrt(i+100);
y=float sqrt(i+168);
if(x*x==i+100&&y*y==i+168){printf("%d\n",i);break;}
}
}
问题如题。
...全文
674 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
辰岡墨竹 2011-09-28
  • 打赏
  • 举报
回复
你这程序有很多错误。
void main不标准写法。
循环没有终止条件,可能死循环。
明明定义了int x那么应该
x=(int)sqrt(i+100);
把sqrt返回的double型转为int,
说说你这个程序什么目的。
ljhhh0123 2011-09-28
  • 打赏
  • 举报
回复
#include <math.h>
x=(int)sqrt((double)i+100);
y=(int)sqrt((double)i+168);
mkki 2011-09-28
  • 打赏
  • 举报
回复
int 转 float徐强制转型,加上(float)
西电一枝花 2011-09-28
  • 打赏
  • 举报
回复
你定义的x,y是int型 然后要把float赋给它 肯定不行 把x,y改成float的 int x,y;
luciferisnotsatan 2011-09-28
  • 打赏
  • 举报
回复
x=(float)sqrt(i+100);
强转加上括号

64,643

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧