房间里的大象 发表于 2016-6-11 11:52:02

一道编程题

#define N 3
#include <stdio.h>
struct student{
        long num;
        char name;
        int scroe ;
        float arr;
};
int main ()
{
        struct student a,*p,*p1;
        int i,j,max,sum=0;
        char name1;
        p=a;
        printf ("亲输入10名同学的数据,学号 姓名 三科成绩 \n");
        for (i=0;i<N;i++,p++)
       {scanf ("%ld%s",&p->num,p->name);
           for (j=0;j<3;j++)
             {scanf ("%d",p->scroe);
             sum+=p->scroe;}
       p->arr=sum/3.0;//每个同学的基本信息 同时完成平均运算
       sum=0;}
    p=a;//重置结构指针
    printf ("学号\t名字\t平均成绩\n");
    for (i=0;i<N;i++,p++)
       printf ("%d\t%s\t%.2f\n",p->num,p->name,p->arr);//
    p=a;//重置结构体指针
        max=p->arr;//设第一个最大
    for (i=0;i<N;i++,p++)
   if (max<=p->arr)
          p1=p;
   printf ("其中\n%d\t%s\t%.2f\n最高",p1->num,p1->name,p1->arr);
}


这段代码有什么错误。。

房间里的大象 发表于 2016-6-11 12:11:57

有10个学生,每个学生数据包括学号,姓名、3门课程的成绩,从键盘输入10个学生的数据,要求输出学生3门课总平均成绩,以及最高分的学生的数据


忘记把题目弄上去了。{:10_266:}

zhenhailuolu 发表于 2016-6-11 15:34:45

scanf ("%d",p->scroe);这句有错 p->scroe前面差取地址符
页: [1]
查看完整版本: 一道编程题