首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

求大神给看看 ,折磨小弟我一天了

2013-01-11 
求大神给看看 ,折磨我一天了啊#include stdio.h#define N 5 void input(struct student stu[N])float a

求大神给看看 ,折磨我一天了啊
#include <stdio.h>
#define N 5
 void input(struct student stu[N]);
float average(struct student stu[N]);
int max(struct student stu[N]);
struct student
 {
 char num[6];
 char name[10];
  float score[6];  
 };
 struct student stu[N];
 void input(struct student stu[N])
 {  
 int i;
 for(i=0;i<N;i++)
    {
 printf("学号:");
 scanf("%s",stu[i].num);
 printf("姓名:");
 scanf("%s",stu[i].name);
 printf("五门课的成绩:\n");
 scanf("%f%f%f%f%f:",&stu[i].score[0],&stu[i].score[1],&stu[i].score[2],&stu[i].score[3],&stu[i].score[4]);
    printf("\n");
     }
}
  float average(struct student stu[N])
  {
    int j,i;
float sum=0, ave;
 for(i=0;i<N;i++)
  {
 for(j=0;j<5;j++)
 {
 sum+=stu[i].score[j];
 }
 stu[i].score[6]=sum/5;
 printf("%d号学生的平均分是%f",i+1,stu[i].score[6]);
 printf("\n");
 }
 int max(struct student stu[N])
  {
   int i,p;
   float max;
   max=stu[0].score[6];
   for(i=1;i<N;i+1)
    {
  if(max<stu[i].score[6])
     {
 max=stu[i].score[6];
 p=i;
 }
     }
 return p;
  }
   void main()
 {
    int i,p;
float ave;
input(stu);
ave=average(stu);
printf("五门课的平均分是%f\n",ave);
printf("\n");
p=max(stu);
printf("最高分的学生的信息:\n学号:%s\n姓名:%s\n",stu[p].num,stu[p].name);
    printf("五门的学科成绩\n"); 
    printf("%f%f%f%f%f\n",stu[p].score[0],stu[p].score[1],stu[p].score[2],stu[p].score[3],stu[p].score[4]);
    printf("平均分是%f\n",stu[p].score[6]);  
 }

[解决办法]
#include <stdio.h>
#define N 5
void input(struct student stu[N]);
void  average(struct student stu[N]);
int  max(struct student stu[N]);
struct student
{
char num[6];
char name[10];
float score[6];  
};
struct student stu[N];
void input(struct student stu[N])
{  
int i;
for(i=0;i<N;i++)
{
printf("学号:");
scanf("%s",stu[i].num);
printf("姓名:");
scanf("%s",stu[i].name);
printf("五门课的成绩:\n");
scanf("%f%f%f%f%f:",&stu[i].score[0],&stu[i].score[1],&stu[i].score[2],&stu[i].score[3],&stu[i].score[4]);
printf("\n");
}
}
void average(struct student stu[N])
{
int j,i;
float sum;
for(i=0;i<N;i++)
{
sum = 0;
for(j=0;j<5;j++)
{
sum+=stu[i].score[j];
}
stu[i].score[5]=sum/5;
printf("%d号学生的平均分是%f",i+1,stu[i].score[5]);
printf("\n");
}
}
int max(struct student stu[N])
{
int i,p;
float max;
max=stu[0].score[5];


for(i=1;i<N;i++)
{
if(max<stu[i].score[5])
{
max=stu[i].score[5];
p=i;
}
}
return p;
}
void main()
{
int p;
//float ave;
input(stu);
average(stu);
//ave=average(stu);
//printf("五门课的平均分是%f\n",ave);
printf("\n");
p=max(stu);
printf("最高分的学生的信息:\n学号:%s\n姓名:%s\n",stu[p].num,stu[p].name);
printf("五门的学科成绩\n"); 
printf("%f%f%f%f%f\n",stu[p].score[0],stu[p].score[1],stu[p].score[2],stu[p].score[3],stu[p].score[4]);
printf("平均分是%f\n",stu[p].score[5]);  
}

热点排行