| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2595 人关注过本帖, 1 人收藏
标题:五个学生,每个学生有学号,姓名,三科分数,要求用average函数求平均值,用 ...
取消只看楼主 加入收藏
z8869113
Rank: 2
等 级:论坛游民
帖 子:44
专家分:14
注 册:2010-12-14
结帖率:75%
收藏(1)
已结贴  问题点数:15 回复次数:6 
五个学生,每个学生有学号,姓名,三科分数,要求用average函数求平均值,用max函数求大分数的学生数据,用input函输入,不知道哪里出错了。
#include<stdio.h>
 struct student
 {
  int hao;
  char name[10];
  int fen[3];

 }stu[5];
 void input()
 {
  int i;
  struct student stu[5];
   for(i=0;i<5;i++)
   {
    scanf("%d,%c,%d,%d,%d",stu[i].hao,stu[i].name,stu[i].fen[0],stu[i].fen[1],stu[i].fen[2]);
   
   }
 }
 int average()
 {
  int i,k=0;
  for(i=0;i<3;i++)
  {
   k+=stu[0].fen[i];
   k+=stu[1].fen[i];
   k+=stu[2].fen[i];
   k+=stu[3].fen[i];
   k+=stu[4].fen[i];
  }
  k=k/15;
  return(k);
 }
 int max()
 {
  int n[5],i,j,k=0;
  for(j=0;j<5;i++)
   for(i=0;i<3;i++)
   {
    n[j]+=stu[j].fen[i];
   }
   
   for(i=0;i<4;i++)
   {
    if(n[i]<n[i+1])
     k=i+1;
   }
   return(k);   
 }

 void main()
 {
  int k,i,j;
   input();
   k=max();
   i=average();

   printf("%d,%c,%d,%d,%d",stu[k].hao,stu[k].name,stu[k].fen[0],stu[k].fen[1],stu[k].fen[2]);
   printf("%d",i);
 }


搜索更多相关主题的帖子: 平均值 姓名 学生 
2010-12-29 17:53
z8869113
Rank: 2
等 级:论坛游民
帖 子:44
专家分:14
注 册:2010-12-14
收藏
得分:0 
回复 2楼 吕少斌
呵呵~我也是啊
2010-12-29 22:42
z8869113
Rank: 2
等 级:论坛游民
帖 子:44
专家分:14
注 册:2010-12-14
收藏
得分:0 
回复 4楼 qq1023569223
#include<stdio.h>
struct student
{
  int hao;
  char name[10];
  int fen[3];
}stu[5];
void input()
{
  int i;
   for(i=0;i<5;i++)
   {
    scanf("%d,%s,%d,%d,%d",stu[i].hao,stu[i].name,&stu[i].fen[0],&stu[i].fen[1],&stu[i].fen[2]);
   
   }
}
int average()
{
  int i,k=0;
  for(i=0;i<3;i++)
  {
   k+=stu[0].fen[i];
   k+=stu[1].fen[i];
   k+=stu[2].fen[i];
   k+=stu[3].fen[i];
   k+=stu[4].fen[i];
  }
  k=k/15;
return k;
}
int max()
{
  int n[5]={0,0,0,0,0},i,j,k=0;
  for(j=0;j<5;j++)
   for(i=0;i<3;i++)
   {
    n[j]+=stu[j].fen[i];
   }
   
   for(i=0;i<4;i++)
   {
    if(n[i]<n[i+1])
     k=i+1;
   }
   return k;   
}

void main()
{
  int k,i;
   input();
   k=max();
   i=average();

   printf("%d,%s,%d,%d,%d",stu[k].hao,stu[k].name,&stu[k].fen[0],&stu[k].fen[1],&stu[k].fen[2]);
   printf("%d",i);
}我改成这样了,不过输入第一个人的数据后错误啊,我输入 1,qwe,34,76,45然后就不行了啊~
2010-12-29 23:19
z8869113
Rank: 2
等 级:论坛游民
帖 子:44
专家分:14
注 册:2010-12-14
收藏
得分:0 
回复 10楼 qq1023569223
我又改了下,输入没问题了,但是输出总是第一个数据,而且求不出均值,不知道拿出了问题了,麻烦看下好么
#include<stdio.h>
struct student
{
  int hao;
  char name[10];
  int fen[3];
}stu[5];
void input()
{
  int i;
   for(i=0;i<5;i++)
   {
    scanf("%d,%s,%d,%d,%d",&stu[i].hao,stu[i].name,&stu[i].fen[0],&stu[i].fen[1],&stu[i].fen[2]);
   }
}
int average()
{
  int i,k=0,j;
  for(j=0;j<5;j++)
  for(i=0;i<3;i++)
  {
      k+=stu[j].fen[i];
  }
  k=k/15;
return(k);
}
int max()
{
  int n[5]={0,0,0,0,0},i,j,k=0;
  for(j=0;j<5;j++)
   for(i=0;i<3;i++)
   {
    n[j]+=stu[j].fen[i];
   }
   
   for(i=0;i<4;i++)
   {
    if(n[i]<n[i+1]) ;
        
    else
    {
        k=n[i];
    n[i]=n[i+1];
    n[i+1]=k;
    }
    k=n[4];
   }
   return(k);   
}

void main()
{
  
   input();
   max();
   average();

   printf("%d,%s,%d,%d,%d\n",stu[max()].hao,stu[max()].name,stu[max()].fen[0],stu[max()].fen[1],stu[max()].fen[2]);
   printf("%d",average());
}

2010-12-30 17:23
z8869113
Rank: 2
等 级:论坛游民
帖 子:44
专家分:14
注 册:2010-12-14
收藏
得分:0 
回复 10楼 qq1023569223
不好意思,我是复制错了。我按你那个也没法输出想要的结果。
2010-12-30 21:00
z8869113
Rank: 2
等 级:论坛游民
帖 子:44
专家分:14
注 册:2010-12-14
收藏
得分:0 
回复 10楼 qq1023569223
我改了。。但是得不到想要的结果啊~麻烦了
2010-12-31 12:58
z8869113
Rank: 2
等 级:论坛游民
帖 子:44
专家分:14
注 册:2010-12-14
收藏
得分:0 
回复 15楼 灵敏天平
谢谢哈~这是要求用结构体做的,看看会不会用。。
2011-01-03 00:06
快速回复:五个学生,每个学生有学号,姓名,三科分数,要求用average函数求平均 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025671 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved