c++中怎样让9/5运算后,强制显示为小数

来源:百度知道 编辑:UC知道 时间:2024/06/06 05:43:32
具体情况如下:请看代码中的注释

#include<iostream.h>

void main()

{
int a;
cout<<"摄氏温度转化为华氏温度,请按1:"<<endl;
cout<<"华氏温度转化为摄氏温度,请按2:"<<endl;
cin>>a;
switch(a)
{
case 1:
double b,c;
cout<<"请输入摄氏温度的值:";
cin>>c;
b=32+(9/5*c);///////////////////即使把b定义为符点数,也没办法让它的小数显示出来.

cout<<endl;
cout<<"所求的华氏温度的值为:"<<b<<endl;
break;
case 2:
double e,f;
cout<<"请输入华氏温度的值:";
cin>>f;
e=(f-32)*5/9;
cout<<endl;
cout<<"所求的摄氏温度的值为:"<<e<<endl;
break;
default:
cout<<"您输入的数不符合要求:"<<endl;

}

}
问题是我不会用强制类型转换

兄弟,试试我的代码!
#include<iostream.h>
#include <iomanip.h>
void main()

{
int a;
cout<<"摄氏温度转化为华氏温度,请按1:"<<endl;
cout<<"华氏温度转化为摄氏温度,请按2:"<<endl;
cin>>a;
switch(a)
{
case 1:
double b,c;
cout<<"请输入摄氏温度的值:";
cin>>c;
b=32+(9/5*c);///////////////////即使把b定义为符点数,也没办法让它的小数显示出来.

cout<<endl;
cout<<"所求的华氏温度的值为:"<<setprecision(6)
<<setiosflags(ios::fixed)<<b<<endl;
break;
case 2:
double e,f;
cout<<"请输入华氏温度的值:";
cin>>f;
e=(f-32)*5/9;
cout<<endl;
cout<<"所求的摄氏温度的值为:"<<setprecision(6)
<<setiosflags(ios::fixed)<<e<<endl;

break;
default:
cout<<"您输入的数不符合要求:"<<endl;

}
cout<<"