| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 260 人关注过本帖
标题:求解!!希望高手指导
只看楼主 加入收藏
多余的流星
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2011-5-2
结帖率:69.23%
收藏
已结贴  问题点数:20 回复次数:3 
求解!!希望高手指导
已知学生的记录由学号和学习成绩构成,N名学生的数据已存入结构体数组a中。请编写函数fun,函数的功能是:找出成绩最高的学生记录,通过形参指针传回主函数(只有一个最高分)。
*s=a[j]如何解释,求指导,谢谢



#include <stdio.h>
#include <string.h>
#define N 10
typedef struct ss
{char num[10]; int s;} STU;
fun(STU a[], STU *s)
{
int i, max=a[0].s, j=0;
 for(i=1; i<N; i++)
  if(max<a[i].s){
    j=i;
    max=a[i].s;
  }
*s=a[j];
}
main ()
{STU a[N]={ {"A01",81},{"A02",89},{"A03", 66},{"A04",87},{"A05",77},{"A06",90},{"A07",79},{"A08",61},{"A09",80},{"A10",71} }, m ;
   int i;
   printf("***** The original data *****\n");
   for (i=0; i< N; i++)printf("No = %s Mark = %d\n", a[i].num,a[i].s);
   fun (a, &m);
   printf ("***** THE RESULT *****\n");
   printf ("The top : %s , %d\n",m.num, m.s);
   NONO();
}
NONO()
{/* 本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 */
  FILE *rf, *wf ;
  STU a[N], m ;
  int i ;
  rf = fopen("in.dat","r");
  wf = fopen("out.dat","w");
  for(i = 0 ; i < 10; i++) fscanf(rf, "%s %d", a[i].num, &a[i].s);
  fun(a, &m);
  fprintf (wf, "The top : %s, %d\n", m.num, m.s);
  fclose(rf);
  fclose(wf);
}




[ 本帖最后由 多余的流星 于 2011-9-15 15:54 编辑 ]
2011-09-15 15:33
bhu_wll
Rank: 3Rank: 3
来 自:北京
等 级:论坛游侠
帖 子:70
专家分:167
注 册:2011-9-8
收藏
得分:20 
第二个FUN
int i,max=a[0].s;
for(i=0;i<N;i++)
if(a[i].s>max)
max=a[i].s;
*s=a[i];

实际上是
int i,max=a[0].s;
for(i=0;i<N;i++)
{
if(a[i].s>max)
max=a[i].s;
}
*s=a[i];

运行到最后时 i =11 ;
*s = a[11];
无意义


你可以改为

int i,max=a[0].s;
*s=a[0];

for(i=0;i<N;i++)
{
if(a[i].s>max)
max=a[i].s;
*s=a[i];
}

努力对待生活
2011-09-15 16:04
bhu_wll
Rank: 3Rank: 3
来 自:北京
等 级:论坛游侠
帖 子:70
专家分:167
注 册:2011-9-8
收藏
得分:0 
还有
*s=a[j]; 就是把第j个结构体元素的地址赋给s喽(s现在的内容就是第j个结构体元素的地址)

希望楼主能看懂

[ 本帖最后由 bhu_wll 于 2011-9-15 16:16 编辑 ]

努力对待生活
2011-09-15 16:08
多余的流星
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2011-5-2
收藏
得分:0 
回复 3楼 bhu_wll
谢谢,明白啦!
2011-09-15 16:33
快速回复:求解!!希望高手指导
数据加载中...
 
   



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

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