| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2993 人关注过本帖
标题:从键盘输入一个不小于10的整数N 随机产生50到100的N个整数 求N个整数的中位 ...
只看楼主 加入收藏
囡囡囡囡
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2017-12-25
结帖率:0
收藏
已结贴  问题点数:20 回复次数:10 
从键盘输入一个不小于10的整数N 随机产生50到100的N个整数 求N个整数的中位数并输出结果
从键盘输入一个不小于10的整数N
随机产生50到100的N个整数
求N个整数的中位数并输出结果
搜索更多相关主题的帖子: 整数 随机 位数 输出 结果 
2017-12-25 11:00
囡囡囡囡
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2017-12-25
收藏
得分:0 
2017-12-25 11:30
虫眼
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:10
帖 子:314
专家分:1121
注 册:2017-11-29
收藏
得分:7 
举例说明一下:
求N个整数的中位数并输出结果

是个什么样的
2017-12-25 12:14
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:7 
这个无难度系数 你是哪里不会写呢  还是你连hello world 都不会呢

DO IT YOURSELF !
2017-12-25 13:40
囡囡囡囡
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2017-12-25
收藏
得分:0 
回复 4楼 wp231957
一点都不会,救我谢谢
2017-12-26 07:51
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10610
专家分:43210
注 册:2014-5-20
收藏
得分:7 
循环N次调用rand()
2017-12-26 09:44
囡囡囡囡
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2017-12-25
收藏
得分:0 
回复 4楼 wp231957
一点都不会,救我谢谢
2017-12-26 10:06
虫眼
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:10
帖 子:314
专家分:1121
注 册:2017-11-29
收藏
得分:0 
你不讲清楚你要的结果别人怎么帮你?
2017-12-26 10:33
囡囡囡囡
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2017-12-25
收藏
得分:0 
回复 8楼 虫眼
你是说中位数?
求中位数时,首先要先排序(从小到大),然后计算中位数的序号,分数据为奇数个与偶数个两种来求.
中位数算出来可避免极端数据,代表着数据总体的中等情况。
如果总数个数是奇数的话,按从小到大的顺序,取中间的那个数
如果总数个数是偶数个的话,按从小到大的顺序,取中间那两个数的平均数
1组数:1、2、3、3、4的中位数是3。
2组数:1、2、3、3的中位数是2.5。
3组数:1、1、2、2的中位数是1.5
2017-12-26 10:43
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
大约这样就可以了吧

程序代码:
#include <stdio.h>
#include <time.h>
#include <stdlib.h>

void Swap(int a[],int i,int j)
{
    int temp=a[i];
    a[i]=a[j];
    a[j]=temp;
}


void BubbleSorting(int a[],int len)
{
   for(int i=0;i<len;i++)
   {
       for(int j=i+1;j<len;j++)
       {
           if(a[i]>a[j])
           {
              Swap(a,i,j);
           }
       }
   }
}

int main()
{
    srand((unsigned)time(NULL));
    int N;
    int* b;
    printf("请输入数列长度N>=10:\n");
    scanf("%d",&N);
    b=(int*)malloc(N*sizeof(int));
    int i=0;
    for(i=0;i<N;i++) *(b+i)=rand()%50+50;
    BubbleSorting(b,N);
    for(int j=0;j<N;j++) printf("%d ",*(b+j));
    if(N%2==0) printf("中位数是%.2lf\n",(*(b+N/2)+*(b+N/2-1))/2.0);else printf("中位数是%d\n",*(b+N/2));
    free(b);
    return 0;
}

DO IT YOURSELF !
2017-12-26 11:03
快速回复:从键盘输入一个不小于10的整数N 随机产生50到100的N个整数 求N个整数的 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017998 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved