| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 641 人关注过本帖
标题:求助一道成绩排序题
只看楼主 加入收藏
yuantongren
Rank: 1
等 级:新手上路
帖 子:9
专家分:4
注 册:2010-12-25
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:7 
求助一道成绩排序题

请教一个问题,这是一道练习题,,大概的内容是输入30个学生的信息,里面包括ID、姓名和成绩,要求是把这30个学生的成绩以从大到小的顺序排下来,最后再算出平均的成绩输出出来。。。
我编完之后总是出错,,请大家帮忙看一下谢谢。。
(最好是能利用一下指针的方法,,,我指针没有学的太明白,,请详细的讲解一下。。谢谢)


程序代码:
#include "stdio.h"
struct student
{
    int id;
    char name;
    int score;
}
swap(int *a,int *b)
{
    int t;
    t=*a;*a=*b;*b=t;
}
void main()
{
    int i,j,t,n=0;
    struct student stu[30];
    int (*p)[30];
    printf("请输入学生的信息:\n");
    for (i=0;i<30;i++)
        scanf("%d%c%d",&stu[i].id,&stu[i].name,&stu[i].score);
    (*p)[30]=stu[30];
    for (i=0;i<29;i++)
    {
        for(j=0;j<29-i;j++)
        {
            if ((*p)[i]->.score<(*p)[i+1]->score)
                swap((*p)[i],(*p)[i+1]);
        }
    }
    printf ("排序后的成绩为:\n");
    for (i=0;i<30;i++)
        printf ("%d\t%c\t%d",(*p)[i]->id,(*p)[i]->name,(*p)[i]->score);
    printf ("平均分数为:");
    for (i=0;i<30;i++)
        n=n+stu[i].score;
    printf ("%d",n);
}
搜索更多相关主题的帖子: 练习题 学生 姓名 
2010-12-25 20:41
yuantongren
Rank: 1
等 级:新手上路
帖 子:9
专家分:4
注 册:2010-12-25
收藏
得分:0 
请大家帮帮忙。。。。谢谢了。。
2010-12-25 20:49
zhaoya881010
Rank: 9Rank: 9Rank: 9
来 自:芒砀古郡
等 级:蜘蛛侠
威 望:1
帖 子:339
专家分:1177
注 册:2010-11-21
收藏
得分:0 
顶下

Go Go Go
2010-12-25 21:21
yuantongren
Rank: 1
等 级:新手上路
帖 子:9
专家分:4
注 册:2010-12-25
收藏
得分:0 
回复 3楼 zhaoya881010
能帮帮忙看看不?
2010-12-25 21:47
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
收藏
得分:20 
程序代码:
for (int i=0;i<n-1;i++)
{
    for (int j=0;j<n-i-1;j++)
    {
        if (a[j]>a[j+1])
        {
            swap();
        }   
    }
}
这是冒泡发   楼主自己看着该

                                         
===========深入<----------------->浅出============
2010-12-25 22:06
yuantongren
Rank: 1
等 级:新手上路
帖 子:9
专家分:4
注 册:2010-12-25
收藏
得分:0 
回复 5楼 laoyang103
谢谢了。。我看看
2010-12-26 12:00
人莫予毒
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2010-12-20
收藏
得分:0 
学习一下。。
2010-12-26 12:47
jun454546423
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2011-4-18
收藏
得分:0 
for (i=0;i<5;i++)
    {
        for(j=i;j<5;j++)
        {
选择法··
2011-04-18 12:27
快速回复:求助一道成绩排序题
数据加载中...
 
   



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

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