C语言数组和函数

#include <stdio.h>

int arrayAverage(int a[], int count);
int arrayMax(int a[],int count);
int arrayMin(int a[],int count);

int main()
{

    //1>    提示输入5个学生的成绩,算出平均分、最高分、最低分,然后输出

    int arry[5];

    for (int i=0; i<5; i++) {

        printf("please %d  number\n",i+1);

        scanf("%d",&arry[i]);
    }

    int length=sizeof(arry)/sizeof(int);

    int ave=0,max=0,min=0;

    ave=arrayAverage(arry,length);

    max=arrayMax(arry,length);

    min=arrayMin(arry,length);

    printf("平均成绩为%d,最大成绩为%d,最小成绩为%d\n",ave,max,min);

    return 0;
}

int arrayAverage(int a[], int count)
{
    int sum = 0;

    for (int i = 0; i < count; i++)
    {
        sum += a[i];
    }
    int average = sum / count;

    return average;
}

int arrayMax(int a[],int count)
{
    int max=a[0];

    for (int i=0; i<count; i++) {
        if (max<a[i]) {
            max=a[i];
        }
    }

    return max;
}

int arrayMin(int a[],int count)
{
    int min=a[0];

    for (int i=0; i<count; i++) {
        if(min>a[i])
        {
            min=a[i];
        }
    }

    return min;
}
时间: 2024-08-05 07:09:19

C语言数组和函数的相关文章

C语言数组和函数实例练习

C语言的数组和函数部分的知识,在语法上和Java语法是有所相似的,这里只通过实例总结一些自己感觉需要理解的部分知识. 1.数组 数组中的元素具有相同的数据类型:数组一旦创建,不能被改变:数组中元素在内存中是连续依次存在的:使用时需要随时注意下标越界的问题. 例1:输入数量不确定的[0,9]范围内的整数,统计每个数字出现的次数,输入-1时结束程序. #include <stdio.h> #include <stdlib.h> int main() { int i; int num[1

C语言 数组做函数参数退化为指针的技术推演

//数组做函数参数退化为指针的技术推演 #include<stdio.h> #include<stdlib.h> #include<string.h> //一维数组做函数参数退化为指针的技术推演 void printfA(char * strarr[3]); //计算机中,数组都是线性存储,二维数组元素也是一个个的排列的 //例如: 1,2,3,4,5,6,7,8,9 像这组数据 我们可以认为是一维数组 int a[9]={1,2,3,4,5,6,7,8,9}; //也

C语言 数组做函数参数不传数组个数的遍历方法

//数组做函数参数不传数组个数的遍历方法 #include<stdio.h> #include<stdlib.h> #include<string.h> void PrintfAK(char **pin){ int i = 0; //关键点:pin[i]!=NULL为终止条件 for (i = 0; pin[i]!=NULL; i++) { printf("%s\n", pin[i]); } } void main(){ //赋值数组最后一个元素是0

c语言数组做函数参数退化为指针

我的系统是MAC OS 64位.根据自己的系统位数不同是有差异的.以下是我学习过程中遇到的问题 大侠略过... 有时候我们想通过一个函数对数组的元素进行操作,在sizelen函数中想想通过sizeof获得数组的长度. 想法是好的,不要以为你对C语言很了解了.其实数组在做函数参数是只是传了,一个指针.也就是数组 的首地址. 从结果可以看出,C编译器确实是这么做得.我的系统是64位,所以int *是占8个字节. 以上只是我学习过程中遇到的问题.大侠略过...

R语言数组array函数

数组是一个可以在两个以上的维度存储数据的R数据对象.例如 - 如果创建尺寸(2,3,4)的数组,那么创建4个矩形矩阵每2行3列.数组只能存储数据类型. 使用 array()函数创建数组.它需要向量作为输入,并使用 dim 参数的值,以创建一个数组. 示例 例子下面将创建的每两个3×3矩阵的数组,具有3行3列. # Create two vectors of different lengths. vector1 <- c(5,9,3) vector2 <- c(10,11,12,13,14,15

PHP语言 -- 数组常用函数

attr = array(1,2,3,4,5); echo in_array(1,$attr); //判断数组中是包含在某个值 , 包含返回1 不包含返回空 print_r(array_reverse($attr));//翻转数组 ,返回一个数组 echo count($attr); //返回数组里面元素的个数 $attr = array(1,1,2,3,4,5); print_r(array_unique($attr));//去重 ,返回一个新的数组 unset($attr[2]);//删除数

黑马程序员——c语言学习心得——函数传递二维数组

黑马程序员——c语言学习心得——函数传递二维数组 -------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 一.定义指针的时候一定要初始化.   变量定义的时候给变量初始化,这是保证不出错的一个很好的习惯.尤其是在指针的使用上,如果我们没有给指针初始化,就会出现野指针,该指针的指向并不是我们所希望的,一旦错误的释放了这个指针,就会发生内存的访问.那么如何初始化指针变量呢,一般有以下几种方法:   1.初始化空指针   int* pInteger=N

C语言二维数组作为函数的参数

前言:今天在实现装配线调度程序时候,用到了二维数组,并将其作为函数的参数.在写程序的时候,遇到一些问题,即二维数组做函数的参数应该如何正确表示.我写程序的错误如下程序所示: #include <cstdio> void print(int *a[3]) { printf("%d\n",a[0][0]); } int main() { int a[2][3] = {1,2,3,4,5,6}; print(a); return 0; } 编译程序时候,在第10行提示错误信息:|

【示例】C语言中利用数组存放函数指针

C语言中利用数组存放函数指针,增加函数使用的灵活性.使用时只需提供数组索引,即可调用不同函数. 预备知识: 1.指向函数的指针 一个函数在编译时被分配一个入口地址,这个地址就被称为函数的指针. 例如: int max(int,int); // 声明函数,比较两数大小 int (*p)(); //声明指向函数的指针变量 p=max; //将函数max的入口地址赋给指针变量p int c=(*p)(a,b); //调用函数 2.函数指针作为函数参数 该例子中每次给process函数不同实参(函数名)