如何使用数字1,2,3,4生成随机的5位数,并用C语言将生成的数字存储在数组中
我必须使用1,2,3,4数字生成随机的5位数,并将生成的数字存储在数组中如何使用数字1,2,3,4生成随机的5位数,并用C语言将生成的数字存储在数组中,c,C,我必须使用1,2,3,4数字生成随机的5位数,并将生成的数字存储在数组中 #include <stdlib.h> #include <time.h> // Generates and prints 'count' random // numbers in range [lower, upper]. void printRandoms(int lower, int upper, int count) { int i; char str[45]; c
#include <stdlib.h>
#include <time.h>
// Generates and prints 'count' random
// numbers in range [lower, upper].
void printRandoms(int lower, int upper, int count)
{
int i;
char str[45];
char k[45];
for (i = 0; i < count; i++)
{
int num = (rand() % (upper - lower + 1)) + lower;
sprintf(str, "%d", num);
strcat(str, k);
printf("%d ", num);
}
printf("%d", k);
}
// Driver code
int main()
{
int lower = 1, upper = 5, count = 5;
// Use current time as
// seed for random generator
srand(time(0));
printRandoms(lower, upper, count);
return 0;
}
#包括
#包括
//随机生成并打印“计数”
//范围内的数字[下,上]。
无效打印随机数(整数下限、整数上限、整数计数)
{
int i;
char-str[45];
chark[45];
对于(i=0;i
预期产出:
[1111111234312123121211232344444]
您在程序中犯了3个错误:
k
在开始时为空,并在每个循环中向其添加一个数字,则必须在循环之前将其初始化为空字符串,例如,通过写入strcpy(k,”)代码>或k[0]='\0'代码>
printf(“%d”,k)代码>是错误的。要使用printf打印字符串,必须使用%s
而不是%d