鱼C论坛

 找回密码
 立即注册
查看: 15401|回复: 24

求1到100之间的奇数和偶数之和

[复制链接]
发表于 2013-8-27 21:07:24 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include <stdio.h>
int main (void)
{
int i,k=0,sum=0;

for (i=1;i<100;i+=2)
{
sum=sum+i;
}
for(i=1;i<100;++i)
{
  k=k+i;

}
k+=sum;
printf ("k=%d\n",k);

return 0;
}


这样写对不对?结果是7450  
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2013-8-27 21:14:21 | 显示全部楼层
你搞什么啊  k+=sum 那你分什么奇偶数啊 而且貌似结果也不对
  1. #include "stdio.h"

  2. void main()
  3. {
  4.         int i,sum = 0,sum_2 = 0;
  5.         for(i = 1;i<=100;i=i+2)
  6.         {
  7.                 sum += i;
  8.         }
  9.         for(i = 2;i<=100;i = i+2)
  10.         {
  11.                 sum_2 += i;
  12.         }
  13.         printf("基数的和是:%d\n偶数的和是:%d\n",sum,sum_2);
  14. }
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-8-27 21:28:27 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-8-27 21:29:20 | 显示全部楼层
阳光影子 发表于 2013-8-27 21:28
是奇数加偶数的和。不是这样写?

(⊙o⊙)…除了基数和偶数还有什么吗直接累加啊
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-8-27 21:32:54 | 显示全部楼层
牡丹花下死做鬼 发表于 2013-8-27 21:29
(⊙o⊙)…除了基数和偶数还有什么吗直接累加啊

我不是先求出1到100的奇数和,然后再求1到100的偶数和。两个总和相加k+=sum  k不是等于k+sum的总和吗?我最后就输出呀
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-8-27 21:39:55 | 显示全部楼层
阳光影子 发表于 2013-8-27 21:32
我不是先求出1到100的奇数和,然后再求1到100的偶数和。两个总和相加k+=sum  k不是等于k+sum的总和吗?我 ...

for(i=1;i<100;++i)
{
  k=k+i;

}
你这不就是求1+2+3+......+100的和 等于5050啊
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-8-27 21:41:00 | 显示全部楼层
牡丹花下死做鬼 发表于 2013-8-27 21:39
for(i=1;i

如果我改成我现在这样的,为什么算不到5050?这个程序哪里错了?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-8-27 21:44:00 | 显示全部楼层
阳光影子 发表于 2013-8-27 21:41
如果我改成我现在这样的,为什么算不到5050?这个程序哪里错了?

什么???
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-8-27 21:48:03 | 显示全部楼层
#include <stdio.h>

int main(void)
{
        int i, sum1 = 0, sum2 = 0, sum = 0;
        for(i = 1; i < 101; i++)
        {
                if(i % 2 == 0)
                        sum2 = sum2 + i;  //偶数之和
                else
                        sum1 = sum1 + i; // 奇数之和
        }

        sum = sum1 + sum2;     //奇数+偶数之和
        printf("sum1 = %d, sum2 = %d, sum = %d\n", sum1, sum2, sum);
        return 0;
}
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-8-27 21:57:39 | 显示全部楼层
阳光影子 发表于 2013-8-27 21:51
这样就对了,明白

你都注册一年了 怎么还停留在这个阶段啊
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-8-27 22:09:12 | 显示全部楼层
我怎么看不到你的回复
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-8-28 00:39:39 | 显示全部楼层
:sad看看  
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-8-28 08:19:23 | 显示全部楼层
sako_sc 发表于 2013-8-27 22:09
我怎么看不到你的回复

我说我学汇编学的太久了,有时候太懒了浪费掉了太多时间
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-8-28 08:43:48 | 显示全部楼层
牛逼!:lol:
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-8-28 09:19:21 | 显示全部楼层
嗯  这个我会   
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-8-28 09:22:00 | 显示全部楼层
for (i=1;i<100;i+=2)
{
sum=sum+i;
}
这里求基数和没有问题;
偶数的时候为什么还是i=1开始呢,
for (i=2;i<=100;i+=2)
{
sum2=sum2+i;
}

这样输出sum就是奇数和,sum2就是偶数和


for (i=1;i<=100;i++)
{
sum3=sum3+i;
}
sum3就是全部的
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-8-28 09:23:56 | 显示全部楼层
干嘛都要用2个顺环啊,为什么不用1个顺环。遍历2次多没效率啊
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-8-28 10:29:45 | 显示全部楼层
jjclgyl 发表于 2013-8-28 09:23
干嘛都要用2个顺环啊,为什么不用1个顺环。遍历2次多没效率啊

没想到这样可以呀。不过现在有三种方法解决,你的效率最高
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-8-28 10:53:16 | 显示全部楼层
阳光影子 发表于 2013-8-28 10:29
没想到这样可以呀。不过现在有三种方法解决,你的效率最高

其实还有种更效率的办法,你遍历奇数,这样只遍历50次,偶数就是奇数+1
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-8-28 11:07:01 | 显示全部楼层
jjclgyl 发表于 2013-8-28 10:53
其实还有种更效率的办法,你遍历奇数,这样只遍历50次,偶数就是奇数+1

写给我看看,研究研究
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-7-16 10:40

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表