gpt4 book ai didi

c - 程序正在代码块上运行,但不在黑客级别

转载 作者:行者123 更新时间:2023-11-30 21:48:30 24 4
gpt4 key购买 nike

这段代码可以在代码块中返回正确的输出,但不能在黑客级别上返回。我没明白这个问题?

#include <stdio.h>

int main()
{
int num,i;
long long unsigned int *num_alloc, FinalSum = 0;
num_alloc=(int*)malloc(sizeof(int)*num);
scanf("%d",&num);
for ( i=0;i<num;i++)
{
scanf("%llu",&num_alloc[num]);
FinalSum =FinalSum + num_alloc[num];
}
printf("%llu",FinalSum);
return 0;
}

最佳答案

让我们看一下您的代码:

  1. malloc(sizeof(int) * num)num 的值是多少? ?
  2. scanf("%d",num) ,查看scanf的返回值( scanf 成功解析的元素数量)
  3. for( i = 0 ; i < num; i++ ) ,循环 i来自0num
  4. scanf("%llu",&num_alloc[num]) ,读取数字并将其存储在 num_alloc[num] 中(C 中数组的索引从 0 开始)
  5. FinalSum = FinalSum + num_alloc[num] ,添加num_alloc[num]FinalSum (参见#4)
  6. 结束循环

我提供了一些修复您的代码的建议。但另外您是否需要存储直到程序结束为止读取的每个值?

此外,“malloc”是“stdlib.h”的一个函数,而您没有包含该头文件。

关于c - 程序正在代码块上运行,但不在黑客级别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48002820/

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