1. 程式人生 > 其它 >OJ1180: 成績統計(結構體專題)(C語言)

OJ1180: 成績統計(結構體專題)(C語言)

技術標籤:OJc語言

題目描述
從鍵盤輸入若干個學生的資訊,每個學生資訊包括學號、姓名、3門課的成績,計算每個學生的總分,輸出總分最高的學生的資訊。
輸入
首先輸入一個整數n(1<=n<=100),表示學生人數,然後輸入n行,每行包含一個學生的資訊:學號(12位)、姓名(不含空格且不超過20位),以及三個整數,表示語文、數學、英語三門課成績,資料之間用空格隔開。
輸出
輸出總成績最高的學生的學號、姓名、及三門課成績,用空格隔開。若有多個最高分,只輸出第一個。
樣例輸入 Copy

541207010188 Zhangling 89 78 95
541207010189 Wangli 85 87 99

541207010190 Fangfang 85 68 76

樣例輸出 Copy

541207010189 Wangli 85 87 99

#include<stdio.h>
struct grade 
{
	int x;
	int y;
	int z;
} add;
typedef struct student
{
	char a[22];
	char b[30];
	struct grade add;
		
} point;
int main()
{
	int n;
	scanf("%d",&n);
	point stu[100];
	int i,a[100],temp=
0; for(i=0;i<n;i++) { scanf("%s",stu[i].a); scanf("%s",stu[i].b); scanf("%d",&stu[i].add.x); scanf("%d",&stu[i].add.y); scanf("%d",&stu[i].add.z); a[i]=stu[i].add.x+stu[i].add.y +stu[i].add.z; } for(i=1;i<n;i++) { if
(a[temp]<a[i]) { temp=i; } } printf("%s %s %d %d %d",stu[temp].a,stu[temp].b,stu[temp].add.x,stu[temp].add.y,stu[temp].add.z); return 0; }

PS: 如果有幫到你,希望留個贊,謝謝!