从键盘输入一个奇数num,编程实现从1至num的所有奇数累加。

请问下哪里错误了

main()

{
int sum =1,num;
printf("请输入一个整数:");
scanf("%d",num);
if(num>=1)
{
int i=1;
while (i <= num);
{
sum += i;
i +=2;
}
if(num%2==1)

          printf("1+3+...+%d = %d\n", sum);

    else

         printf("1+3+...+%d = %d\n", sum); 

}

else printf("无实际意义!\n");

}

#include<stdio.h>
int main()
{
    int sum =0;
    int num;
    printf("请输入一个整数:");
    scanf("%d",&num);
    if(num>=1)
    {
        int i=1;
        while (i <= num)
        {
            sum += i;
            i +=2;
        }
        if(num%2==0)    printf("1+3+...+%d = %d\n", num-1,sum);
        else            printf("1+3+...+%d = %d\n", num,sum); 

    }
    else printf("无实际意义!\n");
    return 0;
}

printf("1+3+...+%d = %d\n", sum);
这是啥玩意,你自己能看懂自己写了个啥吗
1,3,5这些是要你在循环里输出的,最后等号后面的输出sum,不要写自己看不懂的代码
scanf("%d",num);这里也不对,改为scanf("%d",&num);

scanf("%d",&num);
整型输入变量要加&符号取地址

int main()
{
int sum =0,num;
printf("请输入一个整数:");
scanf("%d",&num);
if(num  < 1 || num%2 == 0)
    printf("错误输入");
else
{
     for(int i=1;i<=num;i+=2)
          sum += i;
     printf("1+3+...+%d = %d\n",num,sum);
}
}