C语言求1-100奇数的个数

我是C语言初学者,请大神帮我看下,为什么我这段程序1-100奇数个数运行结果始终是25,而不是50#include<stdio.h>intmain(void){inti;... 我是C语言初学者,请大神帮我看下,为什么我这段程序1-100奇数个数 运行结果始终是25,而不是50

#include <stdio.h>

int main(void)
{
int i;
int j = 0;
int am = 0;

for (i = 1; i <= 100; i += 2)
{
j = j + i;
if (j % 2 == 1)
++am;
}
printf("请输出1-100 中所有奇数的和= %d\n", j);
printf("请输出1-100 中所有奇数的个数= %d\n", am);

return 0;
}
展开
 我来答
庄政警
2019-07-14 · TA获得超过9916个赞
知道大有可为答主
回答量:1113
采纳率:94%
帮助的人:867万
展开全部
#include <stdio.h>
int main(void)
{
int i;
int j = 0;
int am = 0;
for (i = 1; i <= 100; i += 2)
{
j = j + i;
if (i% 2 == 1) //这里是i%2,实际上这个条件没必要,因为i+=2了,肯定是奇数
++am;
}
printf("请输出1-100 中所有奇数的和= %d\n", j);
printf("请输出1-100 中所有奇数的个数= %d\n", am);
return 0;
}
TableDI
2024-07-18 广告
Excel一键自动匹配,在线免费vlookup工具,3步完成!Excel在线免费vlookup工具,点击4步自动完成vlookup匹配,无需手写公式,免费使用!... 点击进入详情页
本回答由TableDI提供
匿名用户
2021-03-26
展开全部
#include <stdio.h>
int main(void)
{
int i,sum1=0,m,sum2=0,a=0,an=0;
for (i=1;i<=100;i++)
{
if(i%2!=0)
{
++a;
sum1=sum1+i;
}

}
printf("1.从1到100的奇数之和为:");
printf("%d\n",sum1);
printf("\n");
printf("2.从1到100的奇数的个数为:");
printf("%d\n",a);
printf("\n");

for (m=1;m<=100;m++)
{
if(m%2==0)
{
++an;
sum2=sum2+m;
}

}
printf("3.从1到100的偶数之和为:");
printf("%d\n",sum2);
printf("\n");
printf("4.从1到100的偶数的个数为:");
printf("%d\n",an);
printf("\n");
return 0;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
许嵩不爱吃土豆
2021-05-07
知道答主
回答量:1
采纳率:0%
帮助的人:482
展开全部
if语句里的(j%2 ==1)如果成立j能被2除等于1,就执行++am,就把1-100之间的奇数的个数除了一半
你换成(i%2 == 1)就好了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式