m0_72280754 2022-10-24 20:17 采纳率: 90.2%
浏览 120
已结题

求此题的代码和流程图

从键盘输入N(N>=5)架战斗机型号和对应的最大飞行高度(如:MiG-31: 25000米、U2: 24000米、F-22: 22000米、Typhoon: 20000米、F-15: 19697米),要求至少自定义2个函数,实现如下功能:
录入和浏览功能:将战斗机的型号和最大飞行高度分别录入到显示系统中,并给出输出。
统计功能:计算战斗机的平均飞行高度,并输出大于平均飞行高度的战斗机型号。
排序功能:按照从大到小的顺序,依次地输出最大飞行高度值。

  • 写回答

3条回答 默认 最新

  • CSDN专家-link 2022-10-24 20:54
    关注
    #include <stdio.h>
    typedef struct _plane
    {
        char name[20];
        int high;
    }plane;
    
    void input(plane p[],int n)
    {
        for(int i=0;i<n;i++)
            scanf("%s:%d",p[i].name,&p[i].high);
    }
    
    void print(plane p[],int n)
    {
        for(int i=0;i<n;i++)
            printf("%s:%d\n",p[i].name,p[i].high);
    }
    
    void avg(plane p[],int n)
    {
        int sum = 0;
        double avg = 0;
        for(int i=0;i<n;i++)
            sum += p[i].high;
        avg = sum*1.0/n;
        for(int i=0;i<n;i++)
            if(p[i].high > avg)
                printf("%s\n",p[i].name);
    }
    
    void sort(plane p[],int n)
    {
        plane t;
        for(int i=0;i<n-1;i++)
            for(int j=0;j<n-i-1;j++)
            {
                if(p[j].high<p[j].high)
                {
                    t = p[j];
                    p[j] = p[j+1];
                    p[j+1] = t;
                }
            }
    }
    
    int main()
    {
        plane p[1000];
        int n;
        scanf("%d",&n);
        input(p,n);
        avg(p,n);
        sort(p,n);
        print(p,n);
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 11月2日
  • 已采纳回答 10月25日
  • 创建了问题 10月24日

悬赏问题

  • ¥15 socket通信实现多人聊天室疑惑
  • ¥15 DEV-C++编译缺失
  • ¥33 找熟练码农写段Pyhthon程序
  • ¥100 怎么让数据库字段自动更新
  • ¥15 antv g6 力导向图布局
  • ¥15 quartz框架,No record found for selection of Trigger with key
  • ¥15 锅炉建模+优化算法,遗传算法优化锅炉燃烧模型,ls-svm会搞,后面的智能算法不会
  • ¥20 MATLAB多目标优化问题求解
  • ¥15 windows2003服务器按你VPN教程设置后,本地win10如何连接?
  • ¥15 求一阶微分方程的幂级数