HQYJ 2024-2-19 作业

本文介绍了如何在C语言中定义一个包含姓名、身高和成绩的结构体,创建一个包含7个元素的结构体数组,并实现根据学生成绩进行冒泡排序的功能。
摘要由CSDN通过智能技术生成
  1. 定义一个学生结构体,包含结构体成员:身高,姓名,成绩;定义一个结构体数组有7个成员,要求终端输入结构体成员的值,根据学生成绩,进行冒泡排序。

    #include <stdio.h>
    #include <string.h>
    #define N 7
    
    typedef struct Stu
    {
    	char name[100];
    	double high;
    	int score;
    }Stu,*Stu_p;
    
    void swap(Stu_p pa,int len);
    
    int main(int argc, const char *argv[])
    {
    	Stu arr[N] = {};
    	printf("请输入学生信息>>>\n");
    	printf("排名前:\n");
    	for(int i=0;i<N;i++)
    	{
    		scanf("%s %lf %d",arr[i].name,&arr[i].high,&arr[i].score);
    	}
    	swap(arr,N);
    	printf("排名后:\n");
    	for(int i=0;i<N;i++)
    	{
    		printf("%s %.2f %d\n",arr[i].name,arr[i].high,arr[i].score);
    	}
    
    	
    	
    	
    	return 0;
    }
    void swap(Stu_p pa,int len)
    {
    	Stu temp;
    	for(int i=1;i<len;i++)
    	{
    		for(int j=0;j<len-i;j++)
    		{
    			if((pa+j)->score < (pa+j+1)->score)
    			{
    				temp = *(pa+j);
    				*(pa+j) = *(pa+j+1);
    				*(pa+j+1) = temp;
    			}
    		}
    	}
    }
    

  • 10
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值