在 C 中使用数组进行模除法,Malloc(免费)
Modulus Division With Arrays in C, Malloc (Free)
打印[start,end]范围内所有能被n整除的数。程序包含 3 个变量,Start、End 和 n 使用 C 编码。这是我到目前为止所拥有的,我不确定每次用户输入新的 start/end 值时如何分配内存。
size_t = end;
int *a = malloc((max+1) * sizeof *a);
if (a) {
for (size_t i = 0; i <= max; i++){
a[i] = i;
free(a);
}
}
return 0;
for(int i = start; i<=end; i++){
if(i%n == 0){
printf("%d is divisible by %d\n",i,n);
}
}
有一些伪代码可以帮助您前进。如果您的目标只是打印数字,则不需要动态内存。您只需要遍历给定范围 [start, end]
。在内部,您需要一个条件来检查范围内的值是否可以被 n
整除;研究 mod 运算符 %
。
size_t = end;
这条线与我有关。我建议你这样做:
int function(int max){
int *a = (int*) malloc ( (max+1) * sizeof(int));
if (a){
for (int i = 0 ; i<=max ; ++i){
a[i] = i;
}
free(a);
return (1);
}
return (0);
}
该函数仅请求向量的大小,据我所知,在您的情况下,不需要其他任何东西。
我建议你有一个 return 到 int,这样你就可以检查是否
分配是否成功
它没有意义,至少对我来说,size_t的定义。 Size_t 是一个函数。 Size_t 是一个函数,因此,调用它时应使用括号 ( ex size_t() )。括号内的内容是类型、变量或您想知道的内容 "size of"。它在我的代码中用作 sizeof(int),因为您想知道整数的大小,所以您可以分配 "integer blocks of memory"
不要忘记在 malloc 之前进行转换。 Malloc 具有指向空指针 (void*) 的 return。这意味着如果您要指向一个整数,则需要使用此转换 (int*)。
我怎么调用这个函数,但是,你应该考虑把max+1改成max。对我来说,它使更多的逻辑。
打印[start,end]范围内所有能被n整除的数。程序包含 3 个变量,Start、End 和 n 使用 C 编码。这是我到目前为止所拥有的,我不确定每次用户输入新的 start/end 值时如何分配内存。
size_t = end;
int *a = malloc((max+1) * sizeof *a);
if (a) {
for (size_t i = 0; i <= max; i++){
a[i] = i;
free(a);
}
}
return 0;
for(int i = start; i<=end; i++){
if(i%n == 0){
printf("%d is divisible by %d\n",i,n);
}
}
有一些伪代码可以帮助您前进。如果您的目标只是打印数字,则不需要动态内存。您只需要遍历给定范围 [start, end]
。在内部,您需要一个条件来检查范围内的值是否可以被 n
整除;研究 mod 运算符 %
。
size_t = end;
这条线与我有关。我建议你这样做:
int function(int max){
int *a = (int*) malloc ( (max+1) * sizeof(int));
if (a){
for (int i = 0 ; i<=max ; ++i){
a[i] = i;
}
free(a);
return (1);
}
return (0);
}
该函数仅请求向量的大小,据我所知,在您的情况下,不需要其他任何东西。
我建议你有一个 return 到 int,这样你就可以检查是否 分配是否成功
它没有意义,至少对我来说,size_t的定义。 Size_t 是一个函数。 Size_t 是一个函数,因此,调用它时应使用括号 ( ex size_t() )。括号内的内容是类型、变量或您想知道的内容 "size of"。它在我的代码中用作 sizeof(int),因为您想知道整数的大小,所以您可以分配 "integer blocks of memory"
不要忘记在 malloc 之前进行转换。 Malloc 具有指向空指针 (void*) 的 return。这意味着如果您要指向一个整数,则需要使用此转换 (int*)。
我怎么调用这个函数,但是,你应该考虑把max+1改成max。对我来说,它使更多的逻辑。