gpt4 book ai didi

c - "rand()"不工作,每次执行后我都会得到相同的数字

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

所以我正在为我的编程课创建一个 ATM 程序,长话短说,我必须创建大约四个随机数。我的问题是我的程序不会创建不同的数字,我在执行我的程序时得到的数字一遍又一遍地相同。我有 srand(time(NULL)); 在我的 main 函数中,因为我的变量是全局的,所以我试图将它从 main 中移出,靠近我的全局变量,这给我留下了一个不兼容的错误.求救!!!

#include<stdio.h>
#include<time.h>
#include<stdlib.h>
#include<string.h>


int account_number = rand() % 5, pin = rand() % 3, chk_acc_bal = rand() % 4, sav_acc_bal = rand() % 5;

最佳答案

这里的问题是您正试图通过函数调用在文件范围内初始化变量。

只需尝试在主函数中初始化变量。类似的东西(我测试并工作):

#include<stdio.h>
#include<time.h>
#include<stdlib.h>
#include<string.h>

int account_number, pin, chk_acc_bal, sav_acc_bal;

int main(void)
{
srand(time(NULL));

account_number = rand() % 5;
pin = rand() % 3;
chk_acc_bal = rand() % 4;
sav_acc_bal = rand() % 5;

printf("%d\n",account_number);
printf("%d\n",pin);
printf("%d\n",chk_acc_bal);
printf("%d\n",sav_acc_bal);

return 0;
}

希望对您有所帮助。最好!

关于c - "rand()"不工作,每次执行后我都会得到相同的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29094145/

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