gpt4 book ai didi

c - 通过条件生成数组对角线上的整数

转载 作者:行者123 更新时间:2023-11-30 17:36:08 25 4
gpt4 key购买 nike

我必须不断生成 10 x 10 数组,直到数组的对角线由大于或等于 7 的数字组成。但是尝试次数不应增加一百万。如果尝试次数少于一百万,即打印出对角线中的数字大于 7 和尝试次数的数组。这是我的代码,问题是我的代码总是显示尝试次数超过一百万。有人可以查看代码并告诉我为什么它不能正常工作吗?

int i, j, matrix2[10][10], attempts, count = 0; 
for (attempts=0; attempts<1000000; attempts++)
{
for (i=0; i<10; i++)
{
for (j=0; j<10; j++)
{
matrix2[i][j] = rand()%10;
if(i==j&&matrix2[i][j] >= 7)
count++;
}
}
}
printf("\n\nNumber of attempts : %d", count);
if (attempts >= 1000000)
printf("\n\nNumber of attempts exceed one million :\t ACTION TERMINATED!!!");
else
{
for (i=0; i<10; i++)
{
for (j=0; j<10; j++)
if (i==j&&matrix2[i][j] >= 7)
printf("%5d",matrix2[i][j]);
printf("\n\n");
}
}

最佳答案

简单:)当尝试次数达到 1000000 时,第一个循环将结束:

attempts = 999998; //continue
attempts = 999999; //continue
attempts = 1000000; //stop

然后,您将检查尝试次数是否大于或等于 1000000,并且它是相等的:)

您应该检查它是否更大:

if (attempts > 1000000)

问候, 卡莫

关于c - 通过条件生成数组对角线上的整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22795500/

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