用VS2010写C程序,怎么把浮点型数据赋值给整型变量

比如程序:#include<stdio.h>#include<math.h>voidmain(){inti,m,k;scanf("%d",m);k=sqrt(m);for... 比如程序:#include<stdio.h>
#include<math.h>
void main()
{
int i,m,k;
scanf("%d",m);
k=sqrt(m);
for(i=2;i<=20;i++)
if(m%i==0)break;
if(i>k) printf("%d是素数\n",m);
else printf("%d不是素数\n",m);
}
调试信息如图片所示,强制数据类型转换也不行,比如 k=(int)sqrt(m),也一样报错误,为什么会这样,怎么解决,别劝我换turbo3.0,系统win7 装不了turbo 3.0.
展开
 我来答
匿名用户
2011-10-15
展开全部
你把k定义成浮点数,再强转k;
类型强制转换 比如 float a = 12.536; int b = (int)a;这样就把浮点数转换成了整型。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
甜橙133
2011-10-15 · 超过19用户采纳过TA的回答
知道答主
回答量:87
采纳率:0%
帮助的人:59万
展开全部
你怎么不用VC6.0的C语言编程软件呢?我也是WIN7的啊,VC6.0装上了。
等一下我到VS里面把你这个程序试下
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
0917idc
2011-10-15 · TA获得超过344个赞
知道小有建树答主
回答量:263
采纳率:100%
帮助的人:142万
展开全部
问题不是出在类型上,
scanf("%d",m);你仔细核查此语句,看看有什么不妥的。报错应该也是这句。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tmactorocket
2011-10-15
知道答主
回答量:56
采纳率:0%
帮助的人:27.6万
展开全部
悲剧的我看不到你的大图~~~~~~~~
你要不把m定义成浮点数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
微俊king
2011-10-15 · TA获得超过576个赞
知道小有建树答主
回答量:626
采纳率:50%
帮助的人:566万
展开全部
sqrt(double(m))
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式