将学生成绩表中的5个学生的成绩,作为初始值,赋给结构体数组students[].

请用结构体数组的数据结构表示方法如下表格:例如:学生成绩表1如下
Student Name Student ID Computer programming Physical Education Communication and Research Averages
John zy001 84 86 78
Xiaoming zy002 77 82 90
Xiaohua zy003 91 81 76
Jianguo zy004 79 82 85
Xiaodong zy005 60 55 40

对应结构体中的成员类型定义
Char studName[20] char studID[20] float compProgram float physEducat float commResech float averageScore

一个实现:


#include <stdio.h>

//定义学生信息结构 
struct  Student{
    char stuName[20];
    char stuID[20];
    float compProgram;
    float physEducat;
    float commResech;
    float averageScore;
};

int main(void){
    //初始化学生结构数组信息 
    Student stus[5]={
        {"John","zy001",77,86,78},
        {"Xiaoming","zy002",77,82,90},
        {"Xiaohua","zy003",91,81,76},
        {"Jianguo","zy004",79,82,85},
        {"Xiaodong","zy005",60,55,40}
    }; 
    
    int i;
    //打印学生结构数组信息 
    printf("学生信息如下:\n") ;
    for(i=0;i<5;i++){
        //计算平均成绩 
        stus[i].averageScore =  (float)((stus[i].commResech+stus[i].compProgram+stus[i].physEducat)/3);
        //打印每个学生信息 
        printf("姓名:%s,学号:%s,编程成绩:%.0f,体育成绩:%.0f,研究成绩:%.0f,平均成绩:%.2f.\n",
        stus[i].stuName,stus[i].stuID,stus[i].compProgram,stus[i].physEducat,stus[i].commResech,stus[i].averageScore);
    }
    return 0; 
} 

#include <stdio.h>

typedef struct {
    char studName[20];
    char studID[20];
    float compProgram;
    float physEducat;
    float commResech;
    float averageScore;
}Student_achievement_t;

int main(){
    Student_achievement_t students[] = {
        {"John", "zy001", 84, 86, 78},
        {"Xiaoming", "zy002", 77, 82, 90},
        {"Xiaohua", "zy003", 91, 81, 76},
        {"Jianguo", "zy004", 79, 82, 85},
        {"Xiaodong", "zy005", 60, 55, 40}
    };
    
    for(int i = 0; i < sizeof(students) / sizeof(Student_achievement_t); i++){
        printf("studName:%-10s\tstudID::%-10s\tcompProgram:%-10.01f\tphysEducat:%-10.01f\tcommResech:%-10.01f\n",
            students[i].studName, students[i].studID, students[i].compProgram, students[i].physEducat, students[i].commResech);
    }
    
    return 0;
}