gpt4 book ai didi

c - float 和 double 数据类型在 gcc 编译器中工作吗?

转载 作者:行者123 更新时间:2023-11-30 17:10:44 26 4
gpt4 key购买 nike

我已经为以下程序编写了代码,但输出似乎是错误的。问题: https://www.hackerrank.com/challenges/plus-minus

代码:

#include <stdio.h>
int main() {

int N,num,i,cp=0,cn=0,cz=0;
double fp,fn,fz;
scanf("%d",&N);
for(i=0;i<N;i++)
{
scanf("%d",&num);
if(num>0)
cp=cp+1;
else if(num==0)
cz=cz+1;
else
cn=cn+1;
}
fp=cp/N;
fn=cn/N;
fz=cz/N;
printf("%lf\n%lf\n%lf",fp,fn,fz);
return 0;
}

输出如下:

0.000000
0.000000
0.000000

最佳答案

说明:

fp=cp/N;
fn=cn/N;
fz=cz/N;

作为整数除法执行。

将代码更改为:

 fp=(double)(cp)/(double)(N);
fn=(double)(cn)/(double)(N);
fz=(double)(cz)/(double)(N);

关于c - float 和 double 数据类型在 gcc 编译器中工作吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32757613/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com