C语言查找数组中的最大值和最小值、计算平均值
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位小数,数据项之间有空格,每个元素输出在不同的行。
按以上要求编写程序。
#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;
}
#include"stdio.h"
main(){
int a[10],i,min,max,sum;
sum=0;
float m;
for(i=0;i<10;i++){
scanf("%d",&a[i]);
}
min=a[0];
max=a[0];
for(i=1;i<10;i++){
if(max<a[i]){
max=a[i];
}
}
for(i=1;i<10;i++){
if(min>a[i]){
min=a[i];
}
}
for(i=0;i<10;i++){
sum+=a[i];
}
m=sum/10;
printf("最大值:%d\n",max);
printf("最小值:%d\n",min);
printf("平均值:%f",m);
}