Day12 输出平局分最高的学生信息

假设学生的基本信息包括学号、
姓名、三门课程成绩以及个人平均成绩。输入n个学生的成绩信息,
计算并输出平均分最高的学生信息。

#include <stdio.h>
struct student {
	int num;
	char name[10];
	int computer,english,math;
	double average;
	
}; 
int main(void)
{
	int i,n;
	struct student max,stu;    //定义结构变量
	printf("Input n:");
	scanf("%d",&n);
	printf("Input the student's number,name and course scores\n");
	for(i=1;i<=n;i++){
		printf("No.%d:",i);
		scanf("%d%s%d%d%d",&stu.num,stu.name,&stu.math,&stu.english,&stu.computer);
		stu.average  = (stu.math + stu.english + stu.computer )/3.0;
		if(i==1){
			max=stu;
			
		}else if (max.average < stu.average ){
			max=stu;
		}
	}
	printf("num:%d,name:%s,average:%.2lf",max.num ,max.name ,max.average );
	
	return 0;
}

测试用例:

Input n:3
Input the student's number,name and course scores
No.1:101 Zhang 78 87 85
No.2:102 Wang 91 88 90
No.3:103 Li 75 90 84
num:102,name:Wang,average:89.67

在程序首部定义了结构类型struct student,其中的成员分别代表学生的基本信息项。在主函数main()中用此结构定义了两个变量stu、max,结构变量可以通过结构成员符“.”对其中某个成员进行引用,如stu.average、max.average ,如果两个结构变量的类型相同,也可以直接赋值,如max=stu,将一个结构变量的所有成员值都赋值给另一个结构变量。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值