关于指针结构体的问题,进来的必有收获,请指教!
/*根据要求编写程序P765.C的指定部分:程序P765.C已编写部分代码(单击此处下载),请根据程序中的要求完善程序——注意,除指定位置外,
不能对程序中已有部分作任何修改或重新编写一个程序,否则作0分处理。
程序的功能是:有五个学生,每个学生的数据包括学号、姓名(最长19字节)、三门课的成绩,
从键盘输入五个学生的数据,计算每个学生的平均成绩并按平均成绩由高到低排序,并将排序结果显示。
要求用结构体编程,变量数据类型的选择应适当,在保证满足设计要求精度的情况下,养成不浪费内存空间和计算时间的好习惯。
编程可用素材:printf("Please input info of students:No Name Math English Computer\n")...。
程序的运行效果应类似地如图1所示,图1中的:
2001 wanghai 78 83 90
2003 zhangzhong 82 80 98
2005 liumei 95 81 90
2006 sunqian 70 77 90
2009 jiansansa 63 87 90
是从键盘输入的内容。
*/
#include <stdio.h>
#include <stdlib.h>
/* User Code Begin(考生可在本行后添加代码,行数不限) */
/* User Code End(考生添加代码结束) */
int main(void)
{
STUDENT myclass[5], *pStu = myclass;
int i;
const int N = 5;
/* User Code Begin(考生可在本行后添加代码,行数不限) */
/* User Code End(考生添加代码结束) */
printf("\nResult of sort:\n");
printf("Num Name Math English Computer Average\n");
for (i=0; i<N; i++)
{
printf("%-5d %-20s %-8d %-8d %-8d %-.2f\n", (pStu+i)->num, (pStu+i)->name,
(pStu+i)->math, (pStu+i)->english, (pStu+i)->computer, (pStu+i)->average);
}
return 0;
}
/* User Code Begin(考生在此后根据设计需要完成程序的其它部分,行数不限) */
疑问:
(pStu+i)->math, (pStu+i)->english, (pStu+i)->computer, (pStu+i)->average);
中的 -> 是什么意思?该如何理解?
请详细解释,不胜感激