如果直接以cin>>方式,输入到float或者int变量中,无法判断类型。
要判断输入的类型,只能以字符串方式输入。然后判断字符串中的字符类型。
如果存在小数点,则代表是浮点数,否则为整型。
代码如下:
int main()
{
char s[200];
cin >> s;
int i;
for(i = 0; s[i]; i ++)
if(s[i] == '.') break;
if(s[i]) cout << "float"<else cout << "int"< }
强制转换,用 (int)2.0*3就是6了。
给你一个强悍的
看接收变量的类型,接收变量是float,那输入的就是float,接受变量是int那么就是int型。
你2* 3 = 6,计算的时候为了保证获取float型,整数形式加上个.0就可以了,如2.0 * f,如果不是运行中可能退化成int型的计算。
统一用字符串读取输入 ,你自己再去分析字符串去..........
直接用ceil或者floor函数取整,反正是整数,不会有影响的