运行时错误 - C 编程
Runtime error - C Programming
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
int cases, num1, num2, var, *ptr2, count, i;
scanf("%d", &cases);
ptr2 = (int*)malloc(sizeof(int) * cases);
memset(ptr2, 0, sizeof(int) * cases);
if (ptr2) {
for (count = 0; count < cases; count++) {
scanf("%d", &num1);
scanf("%d", &num2);
for (i = 0; i < num1; i++) {
scanf("%d", &var);
ptr2[count] += var / num2;
}
}
for (i = 0; i < cases; i++) {
printf("%d\n", ptr2[i]);
}
}
return 0;
}
问题描述如下https://a2oj.com/p?ID=17
它在 VS IDE 上运行得很好,但是由于某种原因,当我提交它时,他们的环境给我一个运行时错误。
切换'if (ptr2){'和'memset(ptr2,0...);'后解决了 – Andrew Naguib
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
int cases, num1, num2, var, *ptr2, count, i;
scanf("%d", &cases);
ptr2 = (int*)malloc(sizeof(int) * cases);
memset(ptr2, 0, sizeof(int) * cases);
if (ptr2) {
for (count = 0; count < cases; count++) {
scanf("%d", &num1);
scanf("%d", &num2);
for (i = 0; i < num1; i++) {
scanf("%d", &var);
ptr2[count] += var / num2;
}
}
for (i = 0; i < cases; i++) {
printf("%d\n", ptr2[i]);
}
}
return 0;
}
问题描述如下https://a2oj.com/p?ID=17 它在 VS IDE 上运行得很好,但是由于某种原因,当我提交它时,他们的环境给我一个运行时错误。
切换'if (ptr2){'和'memset(ptr2,0...);'后解决了 – Andrew Naguib