结构体数组与指针练习
题目: 利用指针指向结构体数组的指针计算学生各科的平均成绩。
- struct
- pointer
- 指向结构体的指针变量名 -> 成员名
代码块
代码块语法遵循标准markdown代码,例如:
#include<stdio.h>
struct date
{
int year;
int month;
int day;
};
struct STUDENT
{
int studentID;
char studentName[10];
char studentSex[4];
struct date timeOfEnter;
int scoreComputer;
int scoreEnglish;
int scoreMath;
int scoreMusic;
};
struct STUDENT stu[30] = {{1,"xiaoming","M",{1992,12,20},90,83,72,82},
{2,"xiaohua","F",{1999,12,20},78,92,88,78},
{3,"zhangsan","M",{1999,12,20},89,72,98,66},
{4,"lisi","F",{1999,12,20},78,95,87,90}
};
int main(){
struct STUDENT *pt;
float sum[4] = {0.0},ave[4] = {0.0};
int i;
char *name[] ={"score of Computer","score of English","score of Math","score of Music"};
pt = stu;
for(pt = stu; pt < stu+30; pt++){
sum[0] = sum[0] + pt->scoreComputer;
sum[1] = sum[1] + pt->scoreEnglish;
sum[2] = sum[2] + pt->scoreMath;
sum[3] = sum[3] + pt->scoreMusic;
}
for(i = 0; i<4; i++)
{
ave[i] = sum[i]/4;
printf("%20s :
%4.2f\n",name[i],ave[i]);
}
return 0;
}