c语言问题,怎么也想不明白,麻烦高手进来看看

[复制链接]
查看11 | 回复4 | 2009-3-2 16:33:19 | 显示全部楼层 |阅读模式
定义的个int型的l和double型的k;到了执行到一句
l=pow(10,k);
时就出问题了,试过k=1,k=3等其他数,l没问题,就是当k=2时,l本来应该是100的,可是变成99了。
怎么也想不明白,望高手指教!
#include
#include
int main()
{
int a,b,c,d,l;double k;
while(scanf("%d%d%lf",&a,&b,&k)&&(a!=0||b!=0))
{
if(a>=0&&a=0&&b0&&k<9)
{l=pow(10,k);
c=a%l;d=b%l;

if(c==d)printf("-1\n");
else printf("%d\n",a+b);
}
}
return 0;

}
这是我的代码
k的值是我也试过用int型的,不过还是不行
用的编译器是Dev-c++

回复

使用道具 举报

千问 | 2009-3-2 16:33:19 | 显示全部楼层
编译器的问题吧...
回复

使用道具 举报

千问 | 2009-3-2 16:33:19 | 显示全部楼层
我试了你的程序没问题啊...
回复

使用道具 举报

千问 | 2009-3-2 16:33:19 | 显示全部楼层
能不能说清楚点,最好把整个程序都写出来别人才知道呀...
回复

使用道具 举报

千问 | 2009-3-2 16:33:19 | 显示全部楼层
我试过了,也是100啊~~...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行