| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 344 人关注过本帖
标题:这错在哪
只看楼主 加入收藏
阿牛的逆袭
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2014-10-18
结帖率:100%
收藏
已结贴  问题点数:5 回复次数:2 
这错在哪
#include <stdio.h>
void scoresum(int *parray[],int size);
void scoresort(int *parray[],int size);  
main()
{
    int a[100][5]; // a[i][1]保存语文成绩, a[i][2]保存数学成绩,a[i][3]保存英语成绩,a[i][4]保存总分
    int *pa[100];
    int i,j,n;
    scanf("%d",&n);
    for(i=1; i<=n; i++)
    {
        pa[i]=a[i];//指针输入pa的每一项指向二维数组a的i行0列的地址。
    }
    for(i=1; i<=n; i++)
        for(j=1;j<=3;j++)
             scanf("%d",*(pa+i)+j);
      
    //调用scoresun函数,传入数组a和数组长度,由于数组是传地址,所以在scoresum中算出并保存array[i][4],也就是保存到实参数组a[i][4]中了。
    scoresum(pa,n);  
   
    //调用scoresort函数,传入数组a和数组长度,由于数组是传地址,所以在scoresort中把形参数组array排好序,也就是把实参数组a排好序了。
    scoresort(pa,n);
      
    //输出排序后的数组
    for(i=1; i<=n; i++)
    {
        for(j=1;j<=4;j++)
             printf("%d ",a[i][j]);
      
          printf("\n");//输出完一行学生成绩后,换行,准备输出下一个学生成绩  
    }
}

void scoresum(int *parray[],int size)
{   int i;   
    for(i=1; i<=size; i++)
        parray[i][4]=parray[i][1]+parray[i][2]+parray[i][3];  //求总分      
}
 
void scoresort(int *parray[],int size)
{
    int i, j,k,*t; //选择排序法
    for(i=1;i<=size-1;i++)
    {
        k=i;
        for(j=i+1;j<=size;j++)
        {
            if(parray[j][4]>parray[k][4]) //总分进行比较
              k=j;  
        }
        if(k!=i)
        {
               
               for(j=1;j<=4;j++)                                                   
               {*t=parray[k][j];
               parray[k][j]=parray[i][j];   
                         parray[i][j]=*t;}
            
        }
    }
}
搜索更多相关主题的帖子: include 
2015-05-01 15:16
诸葛欧阳
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:流年
等 级:贵宾
威 望:82
帖 子:2790
专家分:14619
注 册:2014-10-16
收藏
得分:4 
你应该把你的目的,编译信息贴出来

一片落叶掉进了回忆的流年。
2015-05-01 15:50
阿牛的逆袭
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2014-10-18
收藏
得分:0 
题目描述
在main中,输入n个学生的三门课程的分数,在scoresum中,计算总分,在scoresort中,按照总分从高到低排名。在main中,输出排名后的学生分数和总分。


样例输入
3
70 80 90
80 90 100
75 83 91
样例输出
80 90 100 270
75 83 91 249
70 80 90 240
2015-05-01 20:58
快速回复:这错在哪
数据加载中...
 
   



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

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