月亮偷着哭... 2022-03-30 13:33 采纳率: 84.6%
浏览 67
已结题

request for member 'name' in 'stu'

我的代码遇到这样的问题 我不知道如何处理 我很疑惑 我也没有设置指针变量啊
“在“stu”中请求成员“name”,它是指针类型“stu*”(可能您想使用“->”?)”

#include<stdio.h>
struct STU{
    int num;
    char name[20];
    int score[3];
    int ave;
}stu[10];

int main()
{
     void input(struct STU stu[10]);
     void aver(struct STU stu[10]);
     void out_data(struct STU stu[10]);
     void out(struct STU stu[10]);
     input(stu);
     aver(stu);
     out_data(stu);
     out(stu);
     
      
}
void input(struct STU stu[10])
{
    for(int i=0;i<10;i++)
    scanf("%d  %s %d %d %d",&stu.num,stu.name,&stu[i].score[0],&stu[i].score[1],&stu[i].score[2]);
}
void aver(struct STU stu[10])
{ 
    int pj=0,psum=0;
    for(int j=0;j<10;j++)
    {
        stu[j].ave=(stu[j].score[0]+stu[j].score[1]+stu[j].score[2])/3;
    }

}
void  out_data(struct STU stu[10])
{
    for(int i=0;i<10;i++)
    {
        printf("%4d%4s%",stu[i].num,stu[i].name);
        printf("4d%4d%4d%4d\n",stu[i].score[0],stu[i].score[1],stu[i].score[2]);
    }
}
void out(struct STU stu[10])
  {
      struct STU max=stu[0];
    struct STU min=stu[0];
    for(int i=0;i<10;i++)
    {
        if(max.ave<stu[i].ave)
             max=stu[i];
            
           if(min.ave>stu[i].ave)
                min=stu[i];
    }
    printf("max:%d\n",max.ave);
        printf("min:%d",min.ave);
  }


运行结果:

img

  • 写回答

3条回答 默认 最新

  • 秋杪 2022-03-30 13:52
    关注

    stu.num这里的stu不就是指针么,你应该是想写stu[i].num吧?

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

报告相同问题?

问题事件

  • 系统已结题 4月7日
  • 已采纳回答 3月30日
  • 创建了问题 3月30日

悬赏问题

  • ¥20 机器学习能否像多层线性模型一样处理嵌套数据
  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效