从键盘输入N(N>=5)架战斗机型号和对应的最大飞行高度(如:MiG-31: 25000米、U2: 24000米、F-22: 22000米、Typhoon: 20000米、F-15: 19697米),要求至少自定义2个函数,实现如下功能:
录入和浏览功能:将战斗机的型号和最大飞行高度分别录入到显示系统中,并给出输出。
统计功能:计算战斗机的平均飞行高度,并输出大于平均飞行高度的战斗机型号。
排序功能:按照从大到小的顺序,依次地输出最大飞行高度值。
求如下问题的流程图。
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
3条回答 默认 最新
- 技术专家团-小桥流水 2022-10-25 01:57关注
流程图:
(1)录入及浏览函数流程图(2)统计函数流程图
(3)排序函数流程图
代码:
#include <stdio.h> //定义数据结构体 typedef struct _stdata { char name[20]; //型号 int height; //高度 }StData; //录入功能 void input(StData a[],int* n) { int i; printf("请输入战斗机的数量:"); scanf("%d",n); for(i=0;i<*n;i++) { printf("请输入战斗机%d的型号和高度:",i+1); scanf("%s %d",a[i].name,&a[i].height); } //浏览 printf("战斗机的型号和高度为:\n"); for(i=0;i<*n;i++) { printf("%s:\t%d米\n",a[i].name,a[i].height); } } //统计 void Tongji(StData a[],int n) { float ave = 0; int i; for(i=0;i<n;i++) ave += a[i].height; ave = ave/n; //计算平均高度 printf("大于平均飞行高度的战斗机型号:\n"); for(i=0;i<n;i++) { if(a[i].height > ave) printf("%s ",a[i].name); } } //排序 void SortByHeight(StData a[],int n) { int i,j; StData t; for(i=0;i<n-1;i++) { for(j=0;j<n-1-i;j++) { if(a[j].height < a[j+1].height) { t = a[j]; a[j] = a[j+1]; a[j+1] = t; } } } //依次输出飞行高度 for(i=0;i<n;i++) printf("%d ",a[i].height); } int main() { StData arr[100]; int n; input(arr,&n); //录入并浏览 Tongji(arr,n); //统计功能 SortByHeight(arr,n); //排序功能 return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
- ¥100 为什么这个恒流源电路不能恒流?
- ¥15 有偿求跨组件数据流路径图
- ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
- ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
- ¥15 CSAPPattacklab
- ¥15 一直显示正在等待HID—ISP
- ¥15 Python turtle 画图
- ¥15 stm32开发clion时遇到的编译问题
- ¥15 lna设计 源简并电感型共源放大器