【发布时间】:2021-01-31 09:37:26
【问题描述】:
程序应该只打印出数组的元素,该数组存储 10 到 30 之间的随机整数。我希望这些数字彼此不同,但我的程序不工作,有什么问题吗?谢谢 代码:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
const int N=12;
int arr[N],i,j;
srand(time(0));
for(i=0; i<N; i++)
arr[i]=10+rand()%20;
for(i=0; i<N; i++)
{
for(j=N-1; j == 0; j--)
{
do
{
arr[i]=10+rand()%20;
if(arr[i]!=arr[j])
break;
}
while(arr[i]==arr[j]);
}
printf(">>%d\n",arr[i]);
}
return 0;
}
【问题讨论】:
-
你是怎么用轮盘赌(给随机数)、铅笔和纸的?您如何(在纸上)检测到 12 个数字都不同?
-
@basile-starynkevitch 我不知道我每次都尝试将这个数字与其他所有数字进行比较,但显然不起作用
-
您首先需要能够自己用铅笔和纸来完成这项工作。如果不能,您将无法对计算机进行编程!