LL-BObo 2021-10-19 23:38 采纳率: 50%
浏览 563
已结题

用C语言 给定 n(n≤10000) 和 k (k≤100),将从 1 到 n 之间的所有正整数可以分为两类:A 类数可以被 k 整除(也就是说是 k 的倍数),而 B 类数不能。

给定 n(n≤10000) 和 k (k≤100),将从 1 到 n 之间的所有正整数可以分为两类:A 类数可以被 k 整除(也就是说是 k 的倍数),而 B 类数不能。请输出这两类数的平均数,精确到小数点后 1 位,用空格隔开。

输入n和k任意一个为0则退出。

  • 写回答

1条回答 默认 最新

  • qzjhjxj 2021-10-20 10:06
    关注

    供参考:

    #include <stdio.h>
    int main()
    {
        int n, k, i, ca, cb;
        double sa, sb;
        while (scanf("%d%d", &n, &k) == 2 && n != 0 && k != 0)
        {
            sa = 0; sb = 0; ca = 0; cb = 0;
            for (i = 1; i <= n; i++)
            {
                if (i % k == 0){
                    sa += i;
                    ca++;
                }
                else {
                    sb += i;
                    cb++;
                }
            }
            printf("%.1f %.1f\n", sa / ca, sb / cb);
        }
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 10月20日
  • 已采纳回答 10月20日
  • 创建了问题 10月19日

悬赏问题

  • ¥60 大一项目课,微信小程序
  • ¥15 求视频摘要youtube和ovp数据集
  • ¥15 在启动roslaunch时出现如下问题
  • ¥15 汇编语言实现加减法计算器的功能
  • ¥20 关于多单片机模块化的一些问题
  • ¥30 seata使用出现报错,其他服务找不到seata
  • ¥35 引用csv数据文件(4列1800行),通过高斯-赛德尔法拟合曲线,在选取(每五十点取1点)数据,求该数据点的曲率中心。
  • ¥20 程序只发送0X01,串口助手显示不正确,配置看了没有问题115200-8-1-no,如何解决?
  • ¥15 Google speech command 数据集获取
  • ¥15 vue3+element-plus页面崩溃