标题:不能判断输入值的负数零正数的个数 ,,求助!
只看楼主
好烦、
Rank: 2
等 级:论坛游民
帖 子:78
专家分:72
注 册:2020-10-10
结帖率:87.5%
已结贴  问题点数:20 回复次数:5 
不能判断输入值的负数零正数的个数 ,,求助!
//判断输入值的负数零正数的个数
#include<stdio.h>
int main (void)
{
    int n,i,a=0,b=0,c=0;
    float num;
    scanf("%d",&n);
    for(i=0;i<n;i++)
    {
        scanf("%d",&num);
        if(num==0)
            b++;
        if(num>0)
            c++;
        if(num<0)
            a++;
    }
    printf("%d %d %d",a,b,c);
    return 0;
}
不知为何不能判断
搜索更多相关主题的帖子: 输入 个数 正数 判断 num 
2020-11-03 19:01
xianfajushi
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:8
帖 子:527
专家分:690
注 册:2007-9-8
得分:10 
int num;试看
scanf("%f",&num);试看

[此贴子已经被作者于2020-11-3 19:32编辑过]

2020-11-03 19:10
好烦、
Rank: 2
等 级:论坛游民
帖 子:78
专家分:72
注 册:2020-10-10
得分:0 
???你这什么原理???
2020-11-03 20:01
风过无痕1989
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:8
帖 子:228
专家分:1050
注 册:2020-7-17
得分:10 
回复 楼主 好烦、
浮点数只能这样来比较大小:设一个精度值,如:0.000001,(num - 0.000001) <= num && num <= (num + 0.000001)
程序代码:
#include<stdio.h>
int main (void)
{
    int n,i,a=0,b=0,c=0;
    int num;                 // 浮点数因精度问题不能直接比较大小 
    scanf("%d",&n);
    for(i=0;i<n;i++)
    {
        scanf("%d",&num);
        if(num==0)
            b++;
        if(num>0)
            c++;
        if(num<0)
            a++;
    }
    printf("%d %d %d",a,b,c);
    return 0;
}
2020-11-03 20:47
好烦、
Rank: 2
等 级:论坛游民
帖 子:78
专家分:72
注 册:2020-10-10
得分:0 
回复 4楼 风过无痕1989
ooooooooo!
2020-11-03 22:08
熬夜
Rank: 2
等 级:论坛游民
帖 子:9
专家分:20
注 册:2020-9-30
得分:0 
2020-11-06 21:41



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-503749-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.418868 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved