新微赢技术网
标题:
[求助]类型转换
[打印本页]
作者:
龍2132
时间:
2009-11-3 03:33
标题:
[求助]类型转换
#include <iostream>
using namespace std;
int main()
{
float i,j,k;
int temp;
cin>>i>>j;
j=i/j; k=j;k=j*100;k=(int)k;
j=j*1000;
temp=(int)j;
temp=temp%10;
if(temp>=5)
{k=k+1;
k=k/100;
cout<<k<<endl;}
else
{k=k/100;
cout<<k<<endl;}
return 0;
} 我把temp换成j为什么就会出错呢?如果是float的原因那为什么k就没问题呢?
作者:
君临贵妃
时间:
2009-11-3 03:33
我运行了 没出错 我用的是VC++6.0
作者:
爱你爱到西元
时间:
2009-11-3 03:33
你是把temp换成j了吗
作者:
寂寞
时间:
2009-11-3 03:33
以下是引用心动音符在2006-6-30 15:14:35的发言:
#include <iostream>
using namespace std;
int main()
{
float i,j,k;
int temp;
cin>>i>>j;
j=i/j; k=j;k=j*100;k=(int)k;
j=j*1000;
temp=(int)j; 你指的将这行换为j=(int)j吗?
temp=temp%10;
if(temp>=5)
{k=k+1;
k=k/100;
cout<<k<<endl;}
else
{k=k/100;
cout<<k<<endl;}
return 0;
} 我把temp换成j为什么就会出错呢?如果是float的原因那为什么k就没问题呢?
temp=(int)j; 你指的将这行换为j=(int)j吗?
这样换没有错,这是正常的类型转换.
不过换之后,由于你的temp没有被附值,就直接执行temp=temp%10;
会出现警告
作者:
清风
时间:
2009-11-3 03:33
当然是把所有的TEMP全换成J 了
它说我invalid operands"float"and"int"to binary'operator%'
有错误 好像是类型有问题 但我觉得不应该有问题啊。
作者:
┗白觀喑
时间:
2009-11-3 03:33
建议 :你提问的时候最好在该行的右边注释问题
作者:
祗↘爲.輝仔
时间:
2009-11-3 03:33
OK
作者:
云飞
时间:
2009-11-3 03:33
浮点型是不能求余的
作者:
睡在风里
时间:
2009-11-3 03:33
嗯嗯。。
欢迎光临 新微赢技术网 (http://bbs.weiying.cn/)
Powered by Discuz! X3.2