C语言编写 输出[m,n]范围内所有“韩信点兵“数。

Description

输出m,n范围内所有"韩信点兵"数。

所谓韩信点兵数就是指"除以3余2,除以5余3,除以7余4"的整数。

Input

2个正整数m和n,

1≤m≤n≤100000。

Output

首先在一行中输出所有的韩信点兵数。如果一个都没有,该行就不存在了。

第二行输出第一行输出的整数个数。

整数之间用1个空格隔开,行首行末均无空格。

输入样例 1

1 1000

输出样例 1

53 158 263 368 473 578 683 788 893 998

total=10

cpp 复制代码
 
#include <stdio.h>
#include <stdbool.h>
 bool isHanXin(int num) {
    return (num % 3 == 2 && num % 5 == 3 && num % 7 == 4);
}
 int main() {
    int m, n;
    scanf("%d %d", &m, &n);
     int count = 0;
    bool isFirst = true;
     for (int i = m; i <= n; i++) {
        if (isHanXin(i)) {
            if (!isFirst) {
                printf(" ");
            }
            printf("%d", i);
            count++;
            isFirst = false;
        }
    }
     printf("\ntotal=%d\n", count);
    return 0;
}

这段代码实现了输入两个正整数m和n,然后判断m,n范围内的所有"韩信点兵"数,并进行中文输出。其中,isHanXin函数用于判断一个数是否满足"韩信点兵"的条件。在输出韩信点兵数时,我们使用一个布尔变量isFirst来判断当前的数字是否为第一个韩信点兵数,如果不是第一个数,则在输出前先打印一个空格。这样就避免了最后一个数字后面的多余空格。最后,输出韩信点兵数的总个数。

相关推荐
2601_954526756 小时前
【工业传感与算法实战】温漂补偿与零点抗漂破局:基于二阶多项式拟合的 C/C++ 边缘校准算法,深度拆解“压力变送器什么牌子好”的技术硬指标
c语言·c++·算法
qq_448011167 小时前
C语言中的变量和函数的定义与声明
android·c语言·开发语言
叩码以求索8 小时前
浅谈:算法萌新如何高效刷题应对面试(一)
算法·面试·职场和发展
c238569 小时前
把 C++ 内存分配拆透:new 与 malloc 的三层血缘
开发语言·c++·算法
aaaameliaaa10 小时前
指针之总结
c语言·笔记·算法
宵时待雨10 小时前
优选算法专题9:哈希表
数据结构·算法·散列表
txzrxz10 小时前
最短路问题——Dijkstra 算法
数据结构·c++·算法·最短路·优先队列
gwf21610 小时前
磨损均衡算法(Wear Leveling)——SSD如何让每块闪存“公平退休“?
运维·数据库·人工智能·python·嵌入式硬件·算法·智能硬件
agathakuan11 小时前
Wireshark 解密並導出TLS 1.2 / TLS 1.3 明文的方法(可控制 Client 端)
c语言·wireshark·ssl·openwrt
caimouse11 小时前
protoc-gen-c 支持 proto3 `optional` 关键字修改记录
c语言·学习