设计一个函数,能够对输入的两个学生结构体信息中的成绩按照大小顺序输出。要求使用指针类型的变量进行结构体变量的定义?

设计一个函数,能够对输入的两个学生结构体信息中的成绩按照大小顺序输出。要求使用指针类型的变量进行结构体变量的定义。

解题思路:采用 malloc 函数进行结构体指针变量的定义,并使用 --> 访问成员变量的方式进行结构体变量赋值;比较两个结构体信息中学生的成绩成员变量的大小,按照大小顺序输出。

参考代码:

#include "stdio.h"

#include "malloc.h"

#include "string.h"

#define NUM 1

struct STUDENT

{

char STU_ID[8];

char STU_NAME[10];

int STU_AGE;

int STU_SCORE;

};

int main(int argc, char* argv[])

{

struct STUDENT *stu1 = (struct STUDENT *)malloc(sizeof(struct STUDENT));

stu1->STU_AGE=12;

strcpy(stu1->STU_ID,"04120084");

strcpy(stu1->STU_NAME," 张三 ");

struct STUDENT *stu2=(struct STUDENT *)malloc(sizeof(struct STUDENT));

stu2->STU_AGE=12;

strcpy(stu2->STU_ID,"04120085");

strcpy(stu2->STU_NAME," 李四 ");

printf(" 输入学生成绩 \n");

scanf("%d,%d",&(stu1->STU_SCORE),&(stu2->STU_SCORE));

// 学生补充代码

{

}//end of 补充代码

printf("%s,%d\n",stu1->STU_NAME,stu1->STU_SCORE);

printf("%s,%d\n",stu2->STU_NAME,stu2->STU_SCORE);

return 1;

}

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 以帮助更多的人 ^-^