《C语言及程序设计》实践项目——动态数组 ->【项目1-学生人数没个准】

来源:互联网 发布:数据分析师需要考证吗 编辑:程序博客网 时间:2024/06/02 04:13

2017-04-30


输入学生成绩,输出高于平均成绩的学生序号和成绩。
其中学生人数不定,可能10个,可能1000。在录入成绩之前,学生人数由键盘输入。
由于要先求出平均成绩,然后才能确定输出哪些学生的信息,所以需要一个数组先将学生信息保存下来。考虑学生人数不定,用动态数组是个更适合的方案


//项目1-学生人数没个准#include <stdio.h>#include <malloc.h> //m?????.hvoid main(){    int number, i;        //学生人数    int *score=NULL;        //动态数组的首地址    int sum=0,ave;     //成绩和、均分    //输入学生人数,为动态数组score分配合适大小的空间    printf("输入学生人数:");    scanf("%d", &number);    score = (int *)malloc(number * sizeof(int));    //读入学生成绩,并求出成绩和    for(i=0; i<number; i++)    {        printf("学生%d 的成绩:", i);        scanf("%d", &score[i]);        sum+=score[i];    }    //求平均成绩    ave = 1.0*sum/number;    printf("平均分为:%d\n", ave);    //输出高于平均分的学生的学号(即序号)和成绩    printf("高于平均分的学生成绩:\n");    for(i=0; i<number; i++)    {        if(score[i] > ave)            printf("学生%d 成绩: %d\n", i, score[i]);    }    //释放动态分配的空间    free(score);}
1 0
原创粉丝点击