【发布时间】:2015-03-23 21:05:16
【问题描述】:
我有这个问题:我正在输入要浮动的数字...我希望程序找出第一个数字不是来自特定间隔。 怎么做 ? 示例:输入输入:5 10 20 30 50 46。 30 无效。 问题是,printf 只是打印我的第一个浮点数,例如:10 20 30 40 50。10 无效......我预计“30 无效” 这是代码:
while(scanf("%f",&input)!=EOF || input==0){
sum=input+sum;
if (getchar() == '\n') break;
};
for (int i=0;i<14;i++)
{
if(input!=notes[i])
{
printf("%f is invalid\n",input);
}
}
任何帮助表示赞赏:)
【问题讨论】:
-
严格的比较运算符不适用于浮点数。
input != <something>可能永远是真的 -
谢谢。请问您有什么建议?
-
不幸的是我不太明白你的问题。我刚刚指出了一些潜在的陷阱。
-
用户如何知道“有效”输入数字序列由什么组成?
标签: c