wherem 2020-04-01 17:17 采纳率: 0%
浏览 485

设计一个函数,能够对输入的两个学生结构体信息中的成绩按照大小顺序输出?

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

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

程序框架:

#include "stdio.h"

#include "malloc.h"

#include "string.h"

#define NUM 1

#define STUDENT_NUM 3

struct STUDENT

{

char STU_ID[8];

char STU_NAME[10];

int STU_AGE;

int STU_SCORE;

};

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

{

// 建立一个学生的结构体 : 年龄,学号,名字和分数

int i,j;

struct STUDENT stu[STUDENT_NUM];

stu[0].STU_AGE=12;

strcpy(stu[0].STU_ID,"04120084");

strcpy(stu[0].STU_NAME," 张三 ");

stu[1].STU_AGE=12;

strcpy(stu[1].STU_ID,"04120085");

strcpy(stu[1].STU_NAME," 李四 ");

stu[2].STU_AGE=13;

strcpy(stu[2].STU_ID,"04120086");

strcpy(stu[2].STU_NAME," 赵五 ");

// 选择排序法

// 输入学生的成绩信息

printf("按顺序输入%d个学生的成绩信息,中间用“,”隔开\n",STUDENT_NUM);

scanf("%d,%d,%d",&stu[0].STU_SCORE,&stu[1].STU_SCORE,&stu[2].STU_SCORE);

// 学生添加选择排序法程序

{

}//end of 学生添加选择排序法程序

printf("%s,%d\n",stu[0].STU_NAME,stu[0].STU_SCORE);

printf("%s,%d\n",stu[1].STU_NAME,stu[1].STU_SCORE);

printf("%s,%d\n",stu[2].STU_NAME,stu[2].STU_SCORE);

}

return 1;

}

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2022-09-09 15:35
    关注
    不知道你这个问题是否已经解决, 如果还没有解决的话:

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

报告相同问题?

悬赏问题

  • ¥20 matlab计算中误差
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制
  • ¥20 usb设备兼容性问题
  • ¥15 错误(10048): “调用exui内部功能”库命令的参数“参数4”不能接受空数据。怎么解决啊