1、定义一个大小为10的整型一维数组d和大小为6的单精度浮点型数组x,要求使用符号常量代替10和6(如 #define M 6,M即为符号常量,代表6),将数组d初始化为“10, 2, 3, 4, 5, 50, 11, 20, 10, 9”。应用循环语句,从键盘给数组x的各元素输入数据,注意数据类型和输入格式字符匹配,要求数据大小不相等。
2、查找并输出数组d中的最大值和最大值对应的下标; 查找并输出数组d中的最小值和最小值对应的下标。在不同行输出最大值和最小值及其下标。
3、求数组x中各元素之和的平均值并输出平均值(保留2位小数),另外输出x中元素小于平均值的所有元素的下标和元素值,输出元素数据保留2位小数,数据项之间有空格,每个元素输出在不同的行。
按以上要求编写程序。
C语言查找数组中的最大值和最小值、计算平均值
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- 技术专家团-小桥流水 2021-11-03 21:44关注
#include <stdio.h> #define N 10 #define M 6 int main() { int d[N]={10,2,3,4,5,50,11,20,10,9}; float x[M]; int i; int maxv=d[0],maxIndex = 0,minv=d[0],minIndex =0; float avg = 0; int sum = 0; //给x赋值 printf("请输入%d个大小不等的浮点型数据:",M); for(i=0;i<M;i++) scanf("%f",&x[i]); //找d中的最大值和最小值 for (i=1;i<N;i++) { if(d[i] > maxv) { maxv = d[i]; maxIndex = i; } if(d[i] < minv) { minv = d[i]; minIndex = i; } } printf("数组d中的最大值为%d,下标为%d\n",maxv,maxIndex); printf("数组d中的最小值为%d,下标为%d\n",minv,minIndex); //计算平均值 for(i=0;i<M;i++) avg += x[i]; avg=avg/M; printf("数组x的平均值为%.2f\n",avg); //求小于平均值的下标和 printf("数组x中小于平均值的值及其下标:\n"); for (i=0;i<M;i++) { if(x[i] < avg) printf("值:%.2f 下标:%d\n",x[i],i); } return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 5无用
悬赏问题
- ¥15 微信小程序 用oss下载 aliyun-oss-sdk-6.18.0.min client报错
- ¥15 ArcGIS批量裁剪
- ¥15 labview程序设计
- ¥15 为什么在配置Linux系统的时候执行脚本总是出现E: Failed to fetch http:L/cn.archive.ubuntu.com
- ¥15 Cloudreve保存用户组存储空间大小时报错
- ¥15 伪标签为什么不能作为弱监督语义分割的结果?
- ¥15 编一个判断一个区间范围内的数字的个位数的立方和是否等于其本身的程序在输入第1组数据后卡住了(语言-c语言)
- ¥15 Mac版Fiddler Everywhere4.0.1提示强制更新
- ¥15 android 集成sentry上报时报错。
- ¥15 抖音看过的视频,缓存在哪个文件