C语言小结:数组
案例一
一个长度为10的整型数组里面,保存了班级10个学生的考试成绩。要求编写5个函数,分别实现计算考试的总分,最高分,最低分,平均分和考试成绩降序排序。
#include "pch.h"
#include <iostream>
int i, j; //定义遍历变量
int sum(int arr[]) //求和函数
{
int result = 0;
for ( i = 0; i < 10; i++)
{
result += arr[i];
}
return result;
}
int max(int arr[]) //求最大值函数
{
int maxarr = arr[0];
//int index = 0;
for ( i = 0; i < 10; i++)
{
if (arr[i]>maxarr)
{
maxarr = arr[i];
//index = i;
}
}
return maxarr;
}
int min(int arr[]) //求最小值函数
{
int minarr = arr[0];
for ( i = 0; i < 10; i++)
{
if (arr[i] < minarr)
{
minarr = arr[i];
}
}
return minarr;
}
double averange(int arr[]) //求平均值函数
{
double sum = 0;
for ( i = 0; i < 10; i++)
{
sum += arr[i];
}
return sum/=10;
}
int decrese(int arr[]) //冒泡排序
{
for ( i = 8; i >=0; i--)
{
for (j = 0; j <= i; j++)
{
int temp;
if (arr[j+1]>arr[j])
{
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
return arr[i];
}
int main()
{
int arr[10] = { 98,94,97,92,86,75,90,88,85,80 };
printf("10个同学成绩总分为:%d\n", sum(arr));
printf("10个同学中最高分为:%d\n", max(arr));
printf("10个同学中最低分为:%d\n", min(arr));
printf("10个同学成绩平均分为:%.2f\n", averange(arr));
printf("10个同学按降序排序为:");
decrese(arr);
for ( i = 0; i < 10; i++)
{
printf("%d ", arr[i]);
}
}