| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 428 人关注过本帖
标题:一个很全面的题型!
只看楼主 加入收藏
洛fei
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2009-9-17
结帖率:0
收藏
已结贴  问题点数:20 回复次数:2 
一个很全面的题型!
struct STUDENT {
char name[20];
int age;
float chinese,math,average;
};
定义5个元素的struct STUDENT 数组a[5],编写函数(结构体数组名作为函数参数)实现如下功能:
(1)从键盘输入5个学生的姓名、年龄、语文成绩、数学成绩保存到数组中。
(2)计算这5个学生的均分并保存到相应的结构体成员average中。
(3)按照总分降序排序。
(4)输出这5个学生排序后的列表。

这道题关系小弟明天的生死存亡!达人们帮帮忙吧!最好有详细的详解过程啊!

搜索更多相关主题的帖子: 题型 
2009-09-17 14:27
moondark
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:45
专家分:158
注 册:2009-9-6
收藏
得分:10 
#include <stdio.h>
#include <string.h>
struct STUDENT {
char name[20];
int age;
float chinese,math,average;
};
#define N 5
void sort(struct STUDENT a[]);
main()
{
    int i,count=0;
    struct STUDENT a[N];
    printf("please input the information: \n");
    while(count<N)
    {
        printf("please input the name:");         //输入提示,虽然看起来很长,但是可以提示输入的内容
        scanf("%s",a[count].name);
        printf("please input age,chinese and math :");
        scanf("%d%f%f",&a[count].age,&a[count].chinese,&a[count].math);
        a[count].average=(a[count].chinese+a[count].math)/2;
        count++;
    }
    sort(a);                //调用排序
    for(i=0;i<N;i++)       //打印程序
        printf("%s\t%f\n",a[i].name,a[i].average);
 
}
void sort(struct STUDENT a[])   //排序算法(冒泡法),貌似效率不是很高
{
    int i,j;
    struct STUDENT temp;
    for(i=0;i<N;i++)
        for(j=i;j<N;j++)
            if(a[j].average>a[i].average)
            {
                temp=a[i];
                a[i]=a[j];
                a[j]=temp;
            }
}

2009-09-17 23:20
Devil_W
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:9
帖 子:1160
专家分:1797
注 册:2009-9-14
收藏
得分:10 
我以为真的全面的。。。。
2009-09-17 23:33
快速回复:一个很全面的题型!
数据加载中...
 
   



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

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