c语言随机生成1~9之间的整数的函数,这是我写的程序,结果是数组每个元素都相同,求高手解决

作者&投稿:佼宋 (联系方式在网页底部的电邮联系)
C语言 子函数中生成的数组如何传出?~

可以增加两个输出参数 如
void create(int **array, int *array_len)
{
*array = (int*)malloc(10*sizeof(int));
*array_len = 10;
}
调用:
int *array = NULL;
int array+_len = 0;
create(&array , &array+_len);

是这个意思吗?
#include
#include
#include
void f1(int a[], int len)
{
int i,j;
srand((int)time(0));
for (i=0; i<len; i++)
{
j = 1 + (int) (100.0*rand() / (RAND_MAX + 1.0));
printf(" %d ", j);
a[i] = j;
}
}
void main()
{
int a[10];
int i;
f1(a, 10);
printf("
in main:");
for (i=0; i<10; i++)
printf("%d ", a[i]);
printf("
");
}

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

int rd(void)
{

int random = rand()%9+1;
return random;
}
void main()
{
int i,j,a[9];
srand((unsigned)(time(0)));//放这里,因为0的话每次都是从0开始了,所以不能每次都执行的
a[0]=rd();
for(i=1;i<9;i++)
{
a[i]=rd();
printf("%4d",a[i]);
}
printf("\n");
}

srand((unsigned)(time(0)));
写在main开头

这句是初始化随机因子每次执行这句随机数都会被初始化

相关视频

c语言随机生成1~9之间的整数的函数,这是我写的程序,结果是数组每个元素都...
srand((unsigned)(time(0)));写在main开头这句是初始化随机因子每次执行这句随机数都会被初始化

求用C语言编写一个程序,随机产生81个1到9的数字,输出一个正确的9*9数...
include<stdio.h> #include<stdlib.h> #include int main() {int i,j; srand(time(0)); for(i=0;i<9;i++) {for(j=0;j<9;j++) printf("%d ",rand()%9+1); printf("\\n"); } return 0;} int i,j;for

在C语言编程中,如何实现让电脑随机输出一1~9的整数?
include <stdio.h>include int main(){srand((unsigned)(time(0)));int random = rand()%9+1;printf("%d",random);return 0;}c语言中取得伪随机数主要使用srand()和rand()这两个函数.rand()函数会返回一个伪随机数,但是这是通过一种数学公式推算出来的,得到的随机数分布太集中,这时候要...