| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1695 人关注过本帖
标题:请教数值排序问题
只看楼主 加入收藏
吕孟伟
Rank: 8Rank: 8
等 级:贵宾
威 望:27
帖 子:200
专家分:870
注 册:2018-10-4
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:4 
请教数值排序问题
图片附件: 游客没有浏览图片的权限,请 登录注册

在贴吧看到的一道题,没能做出来,问问大家哈
程序代码:
#include <stdio.h>
#include <stdlib.h>

void tra_arr(int * a, int len);
float get_average(int a[], int length);
void get_arrb(int a[], int length, int t);
int main( void )
{
    int a[20] = {0};
    int i;
    
    float average = 0.0; 
    printf("please you input the 20 number:\n");
    for( i = 0; i < 20; i++)//输入元素 
    {
        scanf("%d", &a[i]);
    }
    
    printf("The a arr:\n");
    tra_arr(a, 20);
    printf("\n");
        
    average = get_average(a, 20);
    printf("The average is %f\n", average);
    
    
    get_arrb(a, 20, average);
    
    system("pause");
    return 0;
}
void tra_arr(int a[], int length)//遍历数组 
{
    int i;
    for( i = 0; i < length; i++ )
    {
        printf("%d\t", a[i]);
    }
}
float get_average(int a[], int length)
{
    float average = 0.0;
    int i;
    int sum = 0;
    for ( i = 0; i < length; i++ )
    {
        sum += a[i];
    }
    average = 1.0 * sum / length;
    return average;
} 
void get_arrb(int a[], int length, int t)
{
    int i;
    int n = 0;
    int temp;
    for (i = 0; i < length; i++ )
    {
        if (t > a[i])
        {
            n++;
            
            printf("%d\t", a[i]);//目前卡在这里,我只能找出小于平均值的数,实现不了排序 
        }
        
    }
    printf("%d\n", n);
    
    
}
搜索更多相关主题的帖子: void int average length printf 
2019-05-27 15:53
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9025
专家分:54030
注 册:2011-1-18
收藏
得分:10 
我连题目都没看懂,就是“当输入相同的数时程序必须能处理”这句
2019-05-27 16:16
吕孟伟
Rank: 8Rank: 8
等 级:贵宾
威 望:27
帖 子:200
专家分:870
注 册:2018-10-4
收藏
得分:0 
回复 2楼 rjsp
一般括弧里的就省去看了吧

借用一下侯捷的话:勿在浮沙筑高台。
2019-05-27 18:52
Q23540008
Rank: 2
来 自:四川广元
等 级:论坛游民
帖 子:3
专家分:14
注 册:2018-12-2
收藏
得分:10 
没看懂,为什么要用平均值呢?使用两个数组,第一个数组存储输入的20个数,依次将第一个数组中的元素按大小遍历后存入第二个数组,按顺序输出第二个数组的元素就行了啊
2019-05-27 22:33
吕孟伟
Rank: 8Rank: 8
等 级:贵宾
威 望:27
帖 子:200
专家分:870
注 册:2018-10-4
收藏
得分:0 
回复 4楼 Q23540008
这道题是说要把20个数中的低于其平均数的数再进行由大到小排列。

借用一下侯捷的话:勿在浮沙筑高台。
2019-05-28 09:11
快速回复:请教数值排序问题
数据加载中...
 
   



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

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