我想让用户定义他们希望存储在我的struct成员中的随机数的数量。 这是我到目前为止所拥有的。
struct BigInt {
int A;
int rdm;
};
struct BigInt A[300];
struct BigInt rdm[10]={0,1,2,3,4,5,6,7,8,9};
printf("Number");
int len;
scanf("%i",&len);
srand(time(NULL));
int i=0;
while (i!=len){
int r=rand()%10;
A[i]=rdm[r];
printf("\nr:%i\n",r);
printf("A[i]:%i",A[i]);
i++;
}
但我得到了奇怪的价值观,而且它没有像我预期的那样发挥作用。我不知道为什么,我做错了什么?
答案 0 :(得分:0)
以下代码段根据您的评论解决您的问题。您可能还没有完全理解如何使用结构。请注意,要使用结构的成员,您必须使用。符号
struct BigInt {
int *A;
};
struct BigInt bigIntVar = {
NULL
};
printf("Number");
int len;
scanf("%i", &len);
bigIntVar.A = (int*)malloc(len * sizeof(int));
srand(time(NULL));
int i = 0;
while (i != len) {
int r = rand() % 10;
bigIntVar.A[i] = r + 1;
printf("\nr:%i\n", r);
printf("A[i]:%d", bigIntVar.A[i]);
i++;
}