栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C语言解决落区间统计个数含源码测试

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C语言解决落区间统计个数含源码测试

问题再现

假定输入10个整数型数组a[n]中各元素值均在[0,200]区间内,编写一个解法,分别统计落在[0,20),[20,50),[50,80)[80,130),[130,200]各区间内的元素数.

输入输出&代码结果

解法精要

一开始我没在意,觉得这个题目要除以10,结果看完题解才发现,只需要将上限输入倒数组里,用数组与输入样本数据进行比较即可。设置一个存放统计结果的数组int c[5],预先把各元素初始化为0,然后通过一趟扫描,按照数据元素的值,它落在哪个区间,相应统计单元加1,

完整源码
#include
#define maxSize 10

void Count(int a[],int n,int d[],int c[]) {
    int i,j;
    for(i=0;i<5;i++) {
        c[i] = 0;
    }//初始化结果数组c,赋值为0
    for(i=0;i 
源码跑路 

假设输入数据有五个,分别是 25 35 45 55 65,现在主函数调用count参数如下:

  • A[]:25 35 45 55 65
  • n = 5
  • d 20 50 80 130 201
  • B 结果数组,不予考虑

count函数首先将c数组进行赋值0,然后进入i和j循环.i<5 j<5

  • i=0 25<20不成立 25<50成立所以c[1]+1
  • i=1 35<20不成立 35<50成立 所以c[1]+1
  • i=2 45<20 不成立 45<50成立 所以c[1]+1
  • i=3 55<20 不成立 55<50不成立 55<80成立 c[2]+1
  • i=4 65<20 不成立 65<50不成立 ,65<80成立 c[2]+1

好神奇,太神奇了,喜欢这个算法!以后有机会我也用,整除思维太low了。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/290983.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号