求1到100之间所有奇数的个数,请大神帮忙看看哪里出了问题?

include

include

int main(void)
{
int i, j = 0;
int sum = 0;
for (i = 1; i <= 100; i++)
{
if ("i%2!=0")
j=j++;
}
printf("%d", j);
system("pause");
return 0;
}

最后输出为100,请问哪里不对?

if ("i%2!=0") 永远都是真

if ("i%2!=0")
j=j++;
}

当为奇数时,你的操作是应该改成sum=sum+i;
if(i%2!=0){
sum=sum+i;
}

#include<stdio.h>
#include<stdlib.h>

int main(void)
{
    int i;
    int sum = 0;
    for (i = 1; i <= 100; i++)
    {
        if((i%2) != 0)
            sum += i;
    }
    printf("%d\n", sum);
    system("pause");

    return 0;
}

#include<stdio.h>
#include<math.h>

int main(void)
{
    int i, j = 0;
    int sum = 0;
    for (i = 1; i <= 100; i++)
    {
        if ( "i%2!=0") //错误
            j=j++;  //错误
    }
    printf("%d", j);
    return 0;
}

正确代码

#include<stdio.h>
#include<math.h>

int main(void)
{
    int i, j = 0;
    int sum = 0;
    for (i = 1; i <= 100; i++)
    {
        if (i%2!=0)
            sum+=i;
    }
    printf("%d", sum);
    return 0;
}

#include
int main(void)
{
int i, j = 0;
int sum = 0;
for (i = 1; i <= 100; i++)
{
if (i%2!=0)//1.if("i%2!=0")这里是错的,加上双引号就成了字符串
j++;//2.j=j++这个式子有问题,j++就相当于j=j+1
}
printf("%d\n", j);
return 0;
}