求我这段代码错在哪里 很绝望 题目是习题5-2 使用函数求奇数和 (15分)

图片说明
我的代码int even( int n){
int f;
if (n%2==1) return 0;
else return 1;

}
int OddSum( int List[], int N ){
int sum=0;
for (int i=1;i<=N;i++){
if (even(List[i]==0)){
sum+=List[i];
}
}
return sum;}

标准答案代码int even( int n ) {
int flag;
if(n%2)
flag = 0;
else
flag = -1;
return flag;
}
int OddSum( int List[], int N ) {
int sum = 0;
for(int i = 0; i < N; i++) {
if(even(List[i])==0) {
sum += List[i];
}
}
return sum;
}

PTA上报错是0 sample等价,有正负零,结果为正

答案错误
3 ms 256 KB
1 结果为负

答案错误
3 ms 296 KB
2 超过10个整数

答案错误
7 ms 384 KB
3 一个偶数

答案正确
3 ms 296 KB

很绝望 求救

查看全部
Baudelaire_evil
Charles_Baudelaire
2020/09/22 09:48
  • c语言
  • 点赞
  • 收藏
  • 回答
    私信
满意答案
查看全部

2个回复