-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathquanlisinhvien-2.c
More file actions
64 lines (63 loc) · 1.2 KB
/
quanlisinhvien-2.c
File metadata and controls
64 lines (63 loc) · 1.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#include <stdio.h>
typedef struct sinhvien
{
char name[100];
float a, b, c;
int map;
} SV;
void input(int n, SV sv[])
{
for (int i = 0; i < n; i++)
{
getchar();
gets(sv[i].name);
sv[i].map = i + 1;
scanf("%f%f%f", &sv[i].a, &sv[i].b, &sv[i].c);
}
}
void repair(int b, SV sv[])
{
getchar();
gets(sv[b].name);
scanf("%f%f%f", &sv[b].a, &sv[b].b, &sv[b].c);
}
int up(int i, SV sv[])
{
if (sv[i].a < sv[i].b && sv[i].b < sv[i].c)
return 1;
return 0;
}
void output(int n, SV sv[])
{
for (int i = 0; i < n; i++)
if (up(i, sv) == 1)
printf("%d %s %.1f %.1f %.1f\n", sv[i].map, sv[i].name, sv[i].a, sv[i].b, sv[i].c);
}
int main()
{
int i = 3;
SV sv[100];
while (i)
{
int n, a, b;
scanf("%d", &n);
switch (n)
{
case 1:
scanf("%d", &a);
input(a, sv);
printf("%d\n", a);
break;
case 2:
scanf("%d", &b);
repair(b - 1, sv);
printf("%d\n", b);
break;
case 3:
output(a, sv);
return 0;
default:
break;
}
}
}