这个程序的问题出现在了哪里?

img

img


写出来答案是对的,但是交作业系统显示编译错误。请赐教,谢谢。


#include <stdio.h>
int crisscross(int n)
{
    if(n%2==0)
        return -n;
    else
        return n;
}
int interlock(int n)
{
    return n*2-1;
}
int main()
{
    int N,i,n;
    float sum=1;
    scanf("%d",&N);
    for(i=2;i<=N;i++)
        sum+=(float)crisscross(i)/interlock(i);
    printf("%.3f\n",sum);
    return 0;
}