zoukankan      html  css  js  c++  java
  • 数组指针的一个小例子

    1、功能:输入6个学生的5门课程成绩,计算出每个学生的平均分和每门课程的平均分。

    2、C语言实现代码:(其实就是用二维数组来实现的,二维数组的引用传递使用数组指针来完成)

    #include <stdio.h>
    #define STUDENT 5
    #define SCORE 6
    void input_array(float (*score)[STUDENT]);
    void avg_score(float (*score)[STUDENT]);
    void avg_course(float (*score)[STUDENT]);

    /**
     * calculate student average score and course average socore.
     */
    int main(){
        float a[SCORE][STUDENT];
        input_array(a);

        avg_course(a);
        avg_score(a);

    }

    void input_array(float (*score)[STUDENT]){
        int i, j;
        for(i=0; i<SCORE; i++){
            printf("input the %d student score:", i+1);
            for(j=0; j<STUDENT; j++){
                scanf("%f", score[i] + j);
            }
        }
    }

    void avg_course(float (*score)[STUDENT]){
        int i,j;
        float s;

        for(j=0; j<STUDENT; j++){
            printf("course%d  ", j);
        }

        printf(" ");

        for(i=0; i<SCORE; i++){
            s=0;
            for(j=0; j<STUDENT; j++){
                printf("%f  ", *(score[i] + j));
                s += *(score[i] + j);
            }
            printf(" s=%f, avg=%f " , s,s/STUDENT);

        }
    }

    void avg_score(float (*score)[STUDENT]){
        int i,j;
        float s;
        for(i=0; i<STUDENT; i++){
            s = 0;
            for(j=0; j<SCORE;j++){
                s+= *(score[j]+i);
            }
            printf("%f  " , s/SCORE);
        }
    }

  • 相关阅读:
    MySQL 通过多个示例学习索引
    git reset的用法
    git rebase的用法
    学习yii2.0——依赖注入
    学习yii2.0——行为
    学习yii2.0——事件
    学习yii2.0——数据验证
    让Apache和Nginx支持php-fpm模块
    安装python3
    使用php操作memcache
  • 原文地址:https://www.cnblogs.com/wangle1001986/p/3164681.html
Copyright © 2011-2022 走看看