练手程序1

1、定义一个结构体,名字stu,成员1学号id(int) 成员2分数score(float);

2、定义一个结构体数组,长度4;

3、从屏幕上输入这4个学生的学号和分数,保存在数组中;

4、按照分数的降序,对数组进行排序。

示例代码:

#include <stdio.h>
#include <stdlib.h>
typedef struct {
	int id;
	float score;

}stu;
//排序
void sort(stu p_stu[], int num) {
	int i, j;
	stu temp;
	for (i = 0; i < num; i++) {
		for (j = i + 1; j < num; j++)
		{
			if (p_stu[i].score < p_stu[j].score)
			{
				//交换两个值
				temp = p_stu[i];
				p_stu[i] = p_stu[j];
				p_stu[j] = temp;
			}
		}
	}
}
int main() {

	int i;
	const int num = 4;
	stu Student[4];
	printf("\t\t请输入学生的信息:\n");
	for (i = 0; i < num; i++) {
		printf("请输入第%d名学生的信息\n", i + 1);
		scanf("%d %f", &Student[i].id, &Student[i].score);
	}
	printf("\t\t输出排序前的学生信息:\n");
	for (i = 0; i < 4; i++) {
		printf("第%d学生信息:%d %f\n", (i + 1), Student[i].id, Student[i].score);
	}
	sort(Student, num);
	printf("\t\t输出排序后的学生信息:\n");
	for (i = 0; i < 4; i++) {
		printf("%d %f\n", Student[i].id, Student[i].score);
	}
	system("pause");
	return 0;
}

运行结果;

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值