| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 500 人关注过本帖
标题:菜鸟求助排序问题.谢谢.
只看楼主 加入收藏
一只大菜鸟
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2007-3-17
收藏
 问题点数:0 回复次数:5 
菜鸟求助排序问题.谢谢.
请先不要说出答案.等我先做一下.实在不会再说.
问题:
将结构中的平均数排序.定义了指针函数void sort(*int,*int,*int);这样不知道对不对?如果调用sort的话,应该怎么调用?我的思路是调用stu[j].a--c然后在子函数里相加排序.不知道这样的思路动对不对?在sort子函数中该怎么设置相关参数?谢谢.
#include<stdio.h>
struct student
{
char name[20];
int number;
int a;
int b;
int c;
}stu[3];
void sort(*int,*int,*int);
void main()
{
int j=0,k=0;
char i;
do
{
printf("请输入名字:\n");
scanf("%s",&stu[j].name);
printf("请输入序号:\n");
scanf("%d",&stu[j].number);
printf("请输入成绩:\n");
scanf("%d",&stu[j].a);
printf("请输入成绩:\n");
scanf("%d",&stu[j].b);
printf("请输入成绩:\n");
scanf("%d",&stu[j].c);
j++;
printf("请选择是否继续:Y/N");
fflush(stdin);
scanf("%c",&i);

}while(i=='Y'||i=='y');
printf("排序前的详细内容为:\n");

printf("学号 姓名 平均成绩\n");


for(k=0;k<j;k++)
{
printf("%d\t%s\t%d\t",stu[k].number,stu[k].name,(stu[k].a+stu[k].b+stu[k].c)/3);
}



}
搜索更多相关主题的帖子: 平均数 
2007-03-17 14:01
zhaoyg
Rank: 1
等 级:新手上路
帖 子:328
专家分:0
注 册:2006-8-28
收藏
得分:0 
我也是个新手
而我现在也只会用冒泡法来解决问题

麻雀飞上枝头变凤凰,而菜鸟的我飞上枝头却感冒了,为什么我的脑袋如此的不管用呢。
2007-03-17 14:28
PcrazyC
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:5652
专家分:0
注 册:2006-10-20
收藏
得分:0 
你可以这样

在主程序中把平均数都求出来放到一个数组A里,编号对应.然后编个函数来进行对数组中的元素排序,把A作为实参传给形参就是了,函数的形参定义为一个整型数组,大小和数组A一样

雁无留踪之意,水无取影之心
2007-03-17 14:37
zhanghuan_10
Rank: 1
等 级:新手上路
威 望:2
帖 子:751
专家分:0
注 册:2006-10-25
收藏
得分:0 
void sort(*int,*int,*int);呵呵,这样可以吗?很久没有看c了,我感觉好像是不对!是不是应该这样啊
void sort(int *, int *, int *);

该学习了。。。
2007-03-17 14:47
PcrazyC
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:5652
专家分:0
注 册:2006-10-20
收藏
得分:0 

应该是下面的,楼上正确,没见过上面的格式


雁无留踪之意,水无取影之心
2007-03-17 14:58
e4lich
Rank: 2
等 级:新手上路
威 望:4
帖 子:182
专家分:0
注 册:2006-10-26
收藏
得分:0 

先用个数组e[]把平均分排列了,然后再按照if((stu[k].a+stu[k].b+stu[k].c)/3==e[])就输出,为了避免有相同的平均分的情况,所以在相同时就要按照number来排了,number小的排前,这样应该就可以了!


我只想变强!     
2007-03-17 16:08
快速回复:菜鸟求助排序问题.谢谢.
数据加载中...
 
   



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

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