| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 553 人关注过本帖
标题:使用结构体给学生信息排序
取消只看楼主 加入收藏
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
结帖率:99.34%
收藏
已结贴  问题点数:20 回复次数:1 
使用结构体给学生信息排序
下面是我的代码,但是结果不正确,谁帮忙看下。
#include  <stdio.h>
#define  N 16

typedef struct student
{
    char num[10];
    int s;
} STREC;

void  fun(STREC a[N]);
 
int main()
{
    STREC s[N] = { {"GA005", 85}, {"GA003", 76}, {"GA002", 96}, {"GA004, 85"}, {"GA001, 91"},
    {"GA007, 72"}, {"GA008, 64"}, {"GA006, 87"}, {"GA015, 85"}, {"GA013, 91"}, {"GA012, 64"},
    {"GA014, 91"}, {"GA011", 66}, {"GA017, 64"}, {"GA018, 64"}, {"GA016, 72"} };
     int i;
     FILE * out;
     fun(s);
     printf("The data after sorted:\n");
     for (i = 0; i < N; i++)
     {
         if ((i) % 4 == 0) printf("\n");
         printf("%s%6d", s[i].num, s[i].s);
     }
     printf("\n");
     out = fopen("out.dat", "w");
     for (i = 0; i < N; i++)
     {
         if ( (i) % 4 == 0 && i )  fprintf(out, "\n");
         fprintf(out, "%4d  ", s[i].s);
     }
     fprintf(out, "\n");
     fclose(out);
}

void fun(STREC a[N])
{
      int i , j ; STREC temp;

      for (i = 0; i < N - 1; i++)
      {
          for (j = i + 1; j < N ; j++)
          if (a[i].s < a[j].s )
          {
             temp = a[i];
             a[i] = a[j];
             a[j] = temp;
          }
      }
}
图片附件: 游客没有浏览图片的权限,请 登录注册

搜索更多相关主题的帖子: 信息 include 结构体 
2011-12-22 20:32
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:0 
回复 2楼 beyondyf
.。。。。。。。。。。。。

梅尚程荀
马谭杨奚







                                                       
2011-12-22 20:49
快速回复:使用结构体给学生信息排序
数据加载中...
 
   



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

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