gpt4 book ai didi

c - C语言产生0到1之间随机数的问题

转载 作者:太空宇宙 更新时间:2023-11-04 00:42:20 24 4
gpt4 key购买 nike

我正在尝试使用 rand() 函数生成一些数字,如下所示:

int main()
{
int i=0
for(i=0;i<20;i++)
{
printf("%f\n",rand_md());
}
return 0;
}



float rand_md()
{
return (float)rand()/(RAND_MAX+1.0);
}

但是当我运行 gcc rand.c 时,我得到如下错误:rand.c:在函数“main”中:rand.c:21: 警告:格式“%f”需要类型“double”,但参数 2 的类型为“int”rand.c:在顶层:rand.c:36: 错误:“rand_md”的类型冲突rand.c:21: error: ‘rand_md’ 的前一个隐式声明在这里

我的代码有什么问题?

最好的问候,

最佳答案

当你使用一个函数而不先声明它时,C 会假定它返回一个 int。要解决此问题,您必须先声明 rand_md 的方法签名,然后再在 main() 中调用它。

main 之前或头文件中添加这样的内容:

float rand_md();

关于c - C语言产生0到1之间随机数的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3643268/

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