第二天 函数指针

#include <stdio.h>
#include <stdlib.h>
void initScores(int *data, int size)
{
   
    for (int i = 0; i < size; i++) {
        /* code */
        printf("请输入第%d个数据 \n",i+1);
        scanf("%d",*data);
        if(*data>100 || *data < 0){
            printf("非法输入");
        }
    }
   
}
void printScores(int *data, int size)
{
     for (int i = 0; i < size; i++) {
        /* code */
        printf("第%d个学生 分数是=%d \n",i-1, data[i]);
    }
}
int getMax(int *data, int size)
{
    int max;
    max = *data;
    for (int i = 0; i < size; i++) {
        /* code */
        if(max < *data){
            max = *data;
        }
    }
    return max;
}
int getMin(int *data, int size)
{
   
    int min;
    min = *data;
    for (int i = 0; i < size; i++) {
        /* code */
        if(min > *data){
            min = *data;
        }
    }
    return min;
}
float getAverage(int *data, int size)
{
    int i;
    int total = 0;
    float average;
    for (int i = 0; i < size; i++) {
        /* code */
        total= total + *data;
    }
    average = total / size;
    return average;
}
void printRet(int max, int min, float average)
{
     printf("max=%d \n min=%d \n 平均分=%f \n",max,min,average);
}
int main()
{
    int arr[10];
    int len;
    int max, min;
    float average;
   
    len=sizeof(arr)/sizeof(arr[0]);
  
    initScores(arr, len);
    printScores(arr, len);
  
    max=getMax(arr, len);
    min=getMin(arr, len);
    average=getAverage(arr, len);
    printRet(max,min,average);
    return 0;
}
 
 
posted @ 2020-02-18 14:40  _魑魅魍魉  阅读(81)  评论(0)    收藏  举报