鱼C论坛

 找回密码
 立即注册
查看: 7982|回复: 18

[已解决]0. 请编写程序,计算出 1000 以内(不包含 1000)的自然数中,属于 3 或 5 的倍数...

[复制链接]
发表于 2020-6-16 21:40:34 | 显示全部楼层 |阅读模式

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

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

x
0. 请编写程序,计算出 1000 以内(不包含 1000)的自然数中,属于 3 或 5 的倍数的数字之和。

刚上了十六节课c

实在是菜没做出来

最佳答案
2020-6-17 10:46:50
本帖最后由 405794672 于 2020-6-17 10:51 编辑
  1. void main()
  2. {
  3.       int i,result=0;
  4.       for(i=3;i<1000;i+=3)
  5.      {    result+=i;     }
  6.      for(i=5;i<1000;i+=5)
  7.      {    result+=i;     }
  8.     printf("%d",result);
  9. }
  10.       
复制代码


这代码没有去重。以下是另一种代码,CPU多计算了很多:
  1. {
  2.      int i,result=0;
  3.      for(i=3;i<1000;i++)
  4.      {
  5.            if(i%3==0||i%5==0)
  6.            {
  7.                  result+=i;
  8.            }
  9.       }
  10.      printf("%d",result);
  11. }
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2020-6-16 21:41:24 | 显示全部楼层
#include <stdio.h>

int main()

{
        for (int i = 5; i < 1000; i++)
        {
                if(        i % 3 ==0 || i % 5 ==0)
                {
                        putchar(i);
                }
        }
        putchar(i)
        i = i
       
       
        return 0;
}
这是我做的半道题
。。。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-16 22:20:27 | 显示全部楼层

回帖奖励 +3 鱼币

本帖最后由 rt3 于 2020-6-17 08:26 编辑


  1. #include <stdio.h>
  2. long sum(long z){
  3.         long x=0,y=0;
  4.         for(x=0;x<=z;x++){
  5.                 y+=x;
  6.         }
  7.         return y;
  8. }

  9. long main(){
  10.                 long a2=3,b2=5,c2=15;
  11.                 long a1=1000/a2;
  12.                 long b1=1000/b2;
  13.                 long c1=1000/c2;

  14.                 long sum2=3*sum(a1)+5*sum(b1)-15*sum(c1);

  15.                 printf("%ld\n",sum2);
  16. }

复制代码



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

使用道具 举报

发表于 2020-6-16 22:53:32 | 显示全部楼层

回帖奖励 +3 鱼币

完整代码
  1. #include<stdio.h>

  2. int main() {
  3.     int sum = 0;

  4.     for (short i = 1; i < 1000; i++) {
  5.         if (!(i % 3 && i % 5)) {
  6.             sum += i;
  7.         }
  8.     }

  9.     printf("%d", sum);
  10.     return 0;
  11. }
复制代码



来 Project Euler 吧,这里有你想要的!
https://fishc.com.cn/thread-60406-1-1.html

评分

参与人数 1荣誉 +5 鱼币 +5 贡献 +3 收起 理由
赵嘉琦 + 5 + 5 + 3

查看全部评分

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

使用道具 举报

发表于 2020-6-16 22:53:45 | 显示全部楼层

很明显的错误哦
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-17 07:20:17 | 显示全部楼层

嗯嗯,改过了,多谢指出
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-17 07:40:01 | 显示全部楼层

回帖奖励 +3 鱼币

育碧
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-6-17 10:46:50 | 显示全部楼层    本楼为最佳答案   

回帖奖励 +3 鱼币

本帖最后由 405794672 于 2020-6-17 10:51 编辑
  1. void main()
  2. {
  3.       int i,result=0;
  4.       for(i=3;i<1000;i+=3)
  5.      {    result+=i;     }
  6.      for(i=5;i<1000;i+=5)
  7.      {    result+=i;     }
  8.     printf("%d",result);
  9. }
  10.       
复制代码


这代码没有去重。以下是另一种代码,CPU多计算了很多:
  1. {
  2.      int i,result=0;
  3.      for(i=3;i<1000;i++)
  4.      {
  5.            if(i%3==0||i%5==0)
  6.            {
  7.                  result+=i;
  8.            }
  9.       }
  10.      printf("%d",result);
  11. }
复制代码

评分

参与人数 1荣誉 +5 鱼币 +5 贡献 +3 收起 理由
赵嘉琦 + 5 + 5 + 3

查看全部评分

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

使用道具 举报

发表于 2020-6-17 12:57:35 | 显示全部楼层

回帖奖励 +3 鱼币

yubi
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2020-6-17 19:42:34 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-6-17 19:55:50 | 显示全部楼层
所以这题的答案是233165 还是234168
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-17 22:25:40 | 显示全部楼层
啊这,是数学题找不出规律打算直接脚本语言硬算吗
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-6-18 20:08:53 | 显示全部楼层
我真的是个好人 发表于 2020-6-17 22:25
啊这,是数学题找不出规律打算直接脚本语言硬算吗

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

使用道具 举报

发表于 2020-11-4 11:27:22 | 显示全部楼层
#include<stdio.h>
int main()
{
        int i,sum=0;
        for (i = 1; i<10; i++)
                if(i%3==0||i%5==0)
                sum += i;
        printf("%d", sum);
        return 0;
}
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-12-28 20:45:48 | 显示全部楼层
6啊
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-6-8 13:52:43 | 显示全部楼层
#include<stdio.h>
#include<stdlib.h>
int main()
{
        int i,sum;
        sum=0;
        for(i=1;i<1000;i++)
        {
                if(i%3==0 || i%5==0)
                {
                        sum+=i;
                }
        }
        printf("%d",sum);
      
system("pause");
return 0;
}
\\上面的人是真的不认真,我忘记答案了来找答案,一个个写的错的以为是正确答案来祸害别人
认真点好吗,一定会有后来人很急需要这个答案
233168
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 2 反对 0

使用道具 举报

发表于 2021-8-11 09:54:33 | 显示全部楼层
#include <stdio.h>
#include <math.h>

void main()
{
        int x;
        int sum = 0;

        for (x = 3; x < 1000; x++)
        {
                if (x % 3 == 0)
                {
                        sum += x;
                        continue;
                }
                else
                {
                        if (x % 5 == 0)
                        {
                                sum += x;
                                continue;
                        }
                }
        }

        printf("能被3或5整数的1000内数字和为%d\n",sum);
}
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-8-30 15:54:18 | 显示全部楼层
405794672 发表于 2020-6-17 10:46
这代码没有去重。以下是另一种代码,CPU多计算了很多:

这个是错的吧
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-16 19:47:35 | 显示全部楼层
#include <stdio.h>
int main()
{
        int sum = 0, i, y;
        for (i = 1; i < 1000; i++)
        {

                if((i % 3 == 0) || (i % 5 == 0))
                {
                        y = i;
                        sum += y;
                }
        }
        printf("sum = %d", sum);
        return 0;
}
     

评分

参与人数 1荣誉 +5 收起 理由
zhangjinxuan + 5 感谢楼主无私奉献!

查看全部评分

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-10 08:29

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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