向浮点数输入一个非数字值
input a non-numeric value to a float
我有这个简单的代码,我输入值到两个浮动变量,他们得到显示。我不能理解的是,如果我给我的输入是非数字会发生什么。就像我输入'a'(没有' ')一样,会生成一个奇怪的数字- 2.69525+0323.21398e=039。这个数字是如何以及为什么产生的?
#include<iostream.h>
int main()
{
float x,y;
cin>>x>>y;
cout<<x<<y;
return 0;
}
另外,如何阻止某人输入非数字值?我想将数字存储在一个数组中,通过它迭代并使用isdigit(),也可以查看小数点是否出现,它应该只出现一次,但这似乎不是一个很好的方法。有更好的方法吗?
- 2.69525+0323.21398e=039
实际上是两个没有空格的奇数。
它们很可能是x
&从y
开始。cin
失效,所以它们没有变化。
如何阻止某人输入非数字值?
- 对他们大喊大叫,威胁不给甜点。-或-
- 将值导入为字符串,验证为数字,然后将其转换为浮点数。
相关文章:
- 如何(从固定列表中)选择一个数字序列,该序列将与目标数字相加
- 如何获取一个数字的前3位
- 以C++输出一个数字三角形
- 反转一个数字程序不起作用,为什么?
- 如何让用户在 c++ 中选择一个数字
- 输出一个数字,该数字可能是三种类型之一
- C++在不使用pow或循环的情况下计算一个数字的幂
- 我必须更改我的数字最后一个数字和第一个数字,但不要使用仅带有整数或循环的函数.例如从 12345 到 52341
- 找到所有与自己求和的数字X的快速方法,去掉一个数字得到N
- C++[递归]将一个数字写成2的升序之和
- 试图找到一个数字的平方根,但代码不起作用。C++
- 我没有得到一个数字作为输出,而是一个表情符号
- 我的代码应该接受一个数字,并返回字母等级或"Grade is not valid"但 else 语句不起作用
- 将一个数字拆分为多个数字,每个数字只有一个有效位
- 你怎么编码,如果x不等于一个数字,程序就会退出
- 如何将整数数组相乘得到一个数字?
- 为无符号字符* 分配一个数字
- 如何以更有效的方式检查一个数字是否是素数?
- C++显示两个区间之间的数字的程序检查一个数字是否可以表示为两个素数的总和
- 字符串和双精度的麻烦,等值后再得到一个数字