gpt4 book ai didi

c - 为什么 scanf 不保存我请求的 "size of an array ' n' "并将其传递到 for 循环?

转载 作者:行者123 更新时间:2023-11-30 16:54:59 25 4
gpt4 key购买 nike

“scanf”不会将我的值 n 传递到 for 循环中

非常感谢您抽出时间来提供帮助,谢谢。终端打印数组的大小。我希望扫描该值并将其命名为 'n' 。然后假设该值“n”被传递到循环,其中小于 999 的随机数被分配给数组的不同部分。

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

int n;
int arraySize;
int randN;
int rand();
int parameter = 999;

int main()
{
printf("What is the size of the array\n");
scanf("%d\n", &n);
//here is the scanf


int i;
for(i = 0 ; i < n; i++ )
{
int array[n];

randN=rand();
if (randN <= parameter)
{
array[i]=randN;
return 0;
}
return 0;
}

}

最佳答案

数组被声明为循环体的第一行。

这意味着,对于每次循环迭代,都会创建数组,设置一个元素,然后数组将不再存在。

如果您希望循环填充整个数组,请在循环之前声明数组。这也将确保数组可以在循环之后使用......其所有元素都填充在循环中。

关于c - 为什么 scanf 不保存我请求的 "size of an array ' n' "并将其传递到 for 循环?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40434316/

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