• 1414 成绩系统之平均成绩

    时间限制 : 2000/1000 MS(Java/Others) | 内存限制 : 65536/32768 KB(Java/Others)

    提交数 : 12448 | 通过数 : 5139

    题目描述

    陈老师布置同学们完成一个小型的成绩管理系统,现在希望你设计其中的一个求平均值的模块。已知有n个学生,每个学生信息包含学号、姓名、性别、3门课程成绩,现在请你设计函数,完成对每个学生3门课程求平均,并输出相应信息。


    输入要求

    先输入一个整数n表示有n个学生信息。(假设学生最多有50)

    接着输入这n个学生的学号、姓名(不超过20个字符,可能带空格)、性别、3门课程成绩。


    输出要求

    输出每个学生的学号、姓名、3门课程成绩以及平均成绩(保留1位小数)。


    输入样例

    2
    15001 Peter Li
    m 90 91 92
    15002 Susan Wang
    f 81 82 83
    

    输出样例

    ---Student Information---
    15001  Peter Li            90 91 92 91.0
    15002  Susan Wang          81 82 83 82.0

    模板

    #include<stdio.h>
    typedef struct student
    {	int ID;
    	char Name[20];
    	char Gender;
    	int score[3];
    	double ave;
    }STU;
    
    
    void add(STU *p,int size);     //函数,实现学生的信息输入
    void average(STU *p,int size);  //函数,求学生平均成绩
    void disp(STU *p,int size);    //函数,实现学生的信息输出
    
    int main()
    {
       STU s[50];
    	int n;
    	scanf("%d",&n);
    	add(s,n);    
    	average(s,n);
    	disp(s,n);
    	return 0;
    }
    
    @-@ //设计函数完成信息输入
    @-@    //设计函数求每个学生的平均分
    void disp(STU *p,int size)
    {
        int i,j;
    
    	printf("---Student Information---\n");
    	for(i=0;i<size;i++)
    	{
    	printf("%d ",p->ID);
    	printf("%-20s ",p->Name);
    	for(j=0;j<3;j++)
    		printf("%d ",p->score[j]);
    	printf("%.1lf ",p->ave);
    	printf("\n");
    	p++;
    	}
      }  
    

    提示

    add函数中的部分输入参考

    scanf("%d ",&p->ID);   //后注,如果PE,把%d后空格去掉;另,复查下测试数据

    gets(p->Name);


    来源

    NBU OJ

    [ 返回顶端 ] | [ 代码提交 ] | [ 统计数据 ] | [ 历史提交 ]