m0_74153183 2022-10-27 12:18 采纳率: 95.5%
浏览 136
已结题

(结构体)设一个班有若干学生(如10人),请定义学生结构包含以下信息:学生学号、学生姓名、高级语言程序课的成绩,请写程序完成以下功能:

问题遇到的现象和发生背景

(结构体) 设一个班有若干学生(如10人),请定义学生结构包含以下信息:学生学号、学生姓名、高级语言程序课的成绩,请写程序完成以下功能:
(1)定义函数以学生结构指针(指向学生数组)为参数,逐个录入该班集的学生信息;
(2)定义函数以学生结构指针(指向学生数组)为参数,求出该班高级语言程序课的排名第一的学生,并输出该第一名学生的学号、姓名及高级语言程序课成绩。
(3)在主程序中完成测试。
我感觉我写的程序没有什么问题,但是没办法运行

用代码块功能插入代码,请勿粘贴截图
#include<stdio.h>
struct student
{
    int number;
    char name[100];
    int score;
};
int main()
{
    struct student* grade;
    grade = (struct student*)malloc(sizeof(struct student));
    struct student max;
    int n;
    scanf_s("%d", &n);
    for (int i = 1; i <= n; i++)
    {
        scanf_s("%d", &grade[i].number);
        gets(grade[i].name);
        scanf_s("%d", &grade[i].score);
    }
    max = grade[1];
    for (int i = 1; i <= n; i++)
    {
        if ((grade->score) > max.score)
        {
            max = grade[i];
        }
    }
    printf("%d", max.number);
    puts(max.name);
    printf("%d", max.score);
    return 0;
}

运行结果及报错内容

img

img


输入到这里没有办法输入了

  • 写回答

3条回答 默认 最新

  • X-道至简 2022-10-27 12:23
    关注

    grade 分配的长度不对 后面要乘以n 上面只分了一个区间

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 11月4日
  • 已采纳回答 10月27日
  • 创建了问题 10月27日

悬赏问题

  • ¥20 wireshark抓不到vlan
  • ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来