for或者公式都过不了

#include<stdio.h>
int main(){
    long long n,s;
    while(~scanf("%lld",&n)){
          if(n%2!=0)
    s=n*(n+1)*(n+2)/6;
    printf("%lld",s);}
}

img

是这个公式吗 我忘了 S=n(2n-1)(2n+1)/3

直接for算呢?公式可能有误差


#include<stdio.h>
int main(){
    int n;
    long long s;
    while(~scanf("%d",&n)){
    s = 0;
    for(int i=1;i<=n;i+=2){
        s+= i*i;
    }
    printf("%lld",s);
    }
}

用例,你再试一下

img

if语句加括号,把printf包含在里面

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
bool Prime(int n)
{
    int i;
    if (n == 1)
        return true;
    for ( i = 3; i <= n; i++)
    {
        if (n % i == 0)
        {
            break;
        }
    }
    if (i == n)
        return true;
    else
        return false;
}

int main(void)
{
    int n;
    int s = 0;
    while (~scanf("%d", &n))
    {
        for (int i = 1; i <= n; i++)
        {
            if (Prime(i))
                s+=i*i;
        }
        printf("%d\n", s);
    }
}

统一回复,本人试过C,C++,Python,JAVA,Ruby,Bash,Go
都不行,此题出自数据结构

通不过,有什么错误提示吗?