| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 359 人关注过本帖
标题:麻烦各位帮我改进下程序?
取消只看楼主 加入收藏
chen1204019
Rank: 1
来 自:广东
等 级:新手上路
帖 子:93
专家分:0
注 册:2012-12-3
结帖率:90.63%
收藏
已结贴  问题点数:20 回复次数:2 
麻烦各位帮我改进下程序?
程序代码:
//  用结构体数组输入学生的学号、姓名、5门课程成绩
//  然后计算每个学生的平均成绩,将平均成绩最高的记录输出
#include "stdio.h"
#include "math.h"
#define N  3
#define M  5
struct  STUDENT         /*   学生信息结构体  */
{    char  no[10] ;
     char  name[12] ;
     float score[6] ;   /*   第6个元素保存平均成绩  */
};

void  input_record( struct  STUDENT array[], int n)
/*  输入函数,完成数据的输入  */
{   int  i, j ;
    for (i=0; i<n; i++)
    {    printf("\n请输入学生的学号: ") ;
         scanf("%s",array[i].no) ;
         printf("\n请输入学生的姓名: ") ;
         scanf("%s",array[i].name) ;
         printf("\n请输入该学生的成绩: \n") ;
         for (j=0 ;j<M; j++)
         {   printf("\n课程: %d  ",j+1);
             scanf("%f", &array[i].score[j]) ;
         }
    }
}
void  output_record( struct  STUDENT array[], int n)
/*  输出函数,输出数据  */
{   int  i, j ;
    printf(" 学  号      姓  名    课程-1   课程-2   课程-3   课程-4   课程-5 \n\n") ;
    for (i=0; i<n; i++)
    {   printf("%-12s", array[i].no) ;
        printf("%-12s", array[i].name) ;
        for (j=0 ;j<M; j++)
            printf("%-9.2f", array[i].score[j]) ;
        printf("\n\n");
    }
}
void main()
{    struct  STUDENT stu[N];
     int n ,p ,t ,num ;
     input_record( stu, N) ;  /*  调用函数输入数据  */
     printf("\n\n") ;
     output_record( stu, N) ;  /*  调用函数输出数据  */
     printf("\n\n") ;
     for(p=0 ;p<N ;p++)
     {   float aver=0.0 ;
         for( t=0; t<M ;t++)
             aver=aver+stu[p].score[t] ;
         stu[p].score[M]=aver/M ;
     }   /*  计算每个学生的平均成绩  */
   
     num=0 ;
     for(p=1 ;p<N ;p++)
         if (stu[num].score[M]<stu[p].score[M])  num=p ;
              /*  找平均成绩最高的元素  */
         printf("\n平均成绩最高的元素下标%d\n ",num) ;
         printf("%-12s", stu[num].no) ;
         printf("%-12s", stu[num].name) ;
         for (t=0 ;t<=M; t++)
             printf("%-8.2f", stu[num].score[t]) ;
         printf("\n");
}
//问题,当有最高平均成绩相同时,这程序明显错误,求改进,给点建议
要注意什么?什么思想?
搜索更多相关主题的帖子: 课程 结构体 
2013-01-07 08:30
chen1204019
Rank: 1
来 自:广东
等 级:新手上路
帖 子:93
专家分:0
注 册:2012-12-3
收藏
得分:0 
回复 2楼 wp231957
不行,也只有原来的结果

新手发言,请多指教!
2013-01-07 08:51
chen1204019
Rank: 1
来 自:广东
等 级:新手上路
帖 子:93
专家分:0
注 册:2012-12-3
收藏
得分:0 
回复 4楼 a4811
运行错误,你输入不同的也全部打印出来的

[ 本帖最后由 chen1204019 于 2013-1-7 22:45 编辑 ]

新手发言,请多指教!
2013-01-07 22:44
快速回复:麻烦各位帮我改进下程序?
数据加载中...
 
   



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

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