按照你题目,我的理解是要数字满足1到100奇数且不是3的倍数,将这些数字求和。
写个不一样的:
#include <stdio.h>
#define MAX 100//最大数值
int main()
{
int sum3=0,n3=1;
while(n3<MAX)
{
if(n3%3!=0)
sum3+=n3;
n3=n3+2;
}
printf("1到100的奇数和 但是没有3的倍数数字和:%d\n",sum3);
return 0;
}
另外:如果只是想要奇数和,也有其他写法,比如:
sum表示1到100数字和,其中奇数偶数个数各50,每个偶数都比前一个奇数大1,所以偶数总和比奇数总和大50,所以奇数总和直接可以用(sum-100/2)/2)表示。
#include <stdio.h>
#define MAX 100//最大数值
int main()
{
int sum=0,n=1;
while(n<=MAX)
sum+=n++;
printf("1到100的奇数和:%d\n",(sum-MAX/2)/2);
return 0;
}