#include <stdio.h>
struct Record
{
char name[20]; /* 名字 */
float sprint; /* 50m*/
int jumping; /* 跑跳*/
float throwing; /* 投球*/
float gripping; /* 握力 */
};
void print_data(Record *data, int N)
{
int i;
printf("名称\t50m\t跑跳\t投球\t握力\n");
for(i = 0; i < N; i++) {
printf("%s\t%f\t%d\t%f\t%f\n", data[i].name, data[i].sprint, data[i].jumping, data[i].throwing, data[i].gripping);
}
}
void find_1st_sprint(Record *data, int N) // 50m第一名函数
{
int i, j;
float min;
min = data[0].sprint;
j = 0;
for(i = 1; i < N; i++) {
if(min > data[i].sprint) {
min = data[i].sprint;
j = i;
}
}
printf("50m第一名:%s\n", data[j].name);
}
void find_1st_jumping(Record *data, int N) // 跑跳第一名函数
{
int i, j;
int max;
max = data[0].jumping;
j = 0;
for(i = 1; i < N; i++) {
if(max < data[i].jumping) {
max = data[i].jumping;
j = i;
}
}
printf("跑跳第一名:%s\n", data[j].name);
}
void find_1st_throwing(Record *data, int N) // 投球第一名函数
{
int i, j;
float max;
max = data[0].throwing;
j = 0;
for(i = 1; i < N; i++) {
if(max < data[i].throwing) {
max = data[i].throwing;
j = i;
}
}
printf("投球第一名:%s\n", data[j].name);
}
void find_1st_gripping(Record *data, int N) // 握力第一名函数
{
int i, j;
float max;
max = data[0].gripping;
j = 0;
for(i = 1; i < N; i++) {
if(max < data[i].gripping) {
max = data[i].gripping;
j = i;
}
}
printf("握力第一名:%s\n", data[j].name);
}
int main()
{
const int N = 5;
Record data[N] =
{
{"Konno", 9.18, 80, 18.2, 7.7},
{"Shida", 8.92, 100, 30.5, 24.9},
{"Sugai", 10.04, 170, 13.8, 27.7},
{"Hirate", 8.34, 110, 18.1, 18.8},
{"Watabe", 8.23, 115, 26.0, 21.4},
};
print_data(data, N); /* 全部数据表示*/
find_1st_sprint(data, N); /* 50m第一名*/
find_1st_jumping(data, N); /* 跑跳第一名*/
find_1st_throwing(data, N); /* 投球第一名*/
find_1st_gripping(data, N); /* 握力第一名*/
return 0;
}