找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2326|回复: 0
收起左侧

众数 c语言程序

[复制链接]
ID:90014 发表于 2015-9-14 18:40 | 显示全部楼层 |阅读模式
#include <iostream>

#include "stdio.h"

typedef unsigned char uint8_t;

using namespace std;

void putarr(uint8_t *arr,uint8_t Length)
{
       while(Length--)
       {
              printf("%d ",*arr++);
       }
       printf("\n");
}

void Stor(uint8_t  *arr,uint8_t Length)
{
       uint8_t Temp,i,j,k;
       for(i=0;i<Length-1;i++)
       {
              k=i;
              for(j=k+1;j<Length;j++)
              {
                     if(arr[k]<arr[j])
                            k=j;
              }
              if(k!=i)
              {
                     Temp=arr[k];
                     arr[k]=arr;
                     arr=Temp;
              }
       }
}

uint8_t MM(uint8_t *arr,uint8_t Length) //求众数函数
{
       uint8_t i;
       uint8_t count=0,max=0,nunber;
       uint8_t cc;
       Stor(arr,Length);
       for(i=1;i<Length;i++)
       {
              arr>arr[i-1]?cc=arr-arr[i-1]:cc=arr[i-1]-arr;
              if(cc==0)
              {
                     count++;
              }
              else
              {
                     count=1;
                     continue;
              }
              if(count>max)
              {
                     nunber=arr;
                     max=count;
              }
       }
       printf("zhong shu =%d\t ci shu shi %d\n",nunber,max);
       return nunber;
}


int main()
{
    uint8_t arr[]={1,2,3,12,14,18,2,2,3};
   // Stor(arr,sizeof(arr));
    //putarr(arr,sizeof(arr));
       MM(arr,sizeof(arr));
    return 0;
}


回复

使用道具 举报

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

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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