一.
1 #include<stdio.h>
2 typedef struct
3 {
4 int num;
5 char name[100];
6 int eng;
7 int chn;
8 int math;
9 } mystu;
10 mystu a={101,"liu"},b={102,"wu"};
11 int main(void)
12 {
13 scanf("%d%d%d",&(a.eng),&(a.chn),&(a.math));
14 printf("num=%d,name=%s,eng=%d,chn=%d,math=%d\n",a.num,a.name,a.eng,a.chn,a.math);
15 scanf("%d%d%d",&(b.eng),&(b.chn),&(b.math));
16 printf("num=%d,name=%s,eng=%d,chn=%d,math=%d\n",b.num,b.name,b.eng,b.chn,b.math);
17 return 0;
18 }
liujinhe@vubunta:~/9.7$ ./test1
30 40 50
num=101,name=liu,eng=30,chn=40,math=50
40 50 60
num=102,name=wu,eng=40,chn=50,math=60
二.
1 #include<stdio.h>
2 typedef struct
3 {
4 int num;
5 char name[100];
6 int eng;
7 int chn;
8 int math;
9 } mystu;
10 mystu a={101,"liu",30,40,50},b={102,"wu",40,50,60};
11 int main(void)
12 {
13 int x;
14 scanf("%d",&x);
15 // scanf("%d%d%d",&(a.eng),&(a.chn),&(a.math));
16 if(x==101)
17 printf("num=%d,name=%s,eng=%d,chn=%d,math=%d\n",a.num,a.name,a.eng,a.chn,a.math);
18 // scanf("%d%d%d",&(b.eng),&(b.chn),&(b.math));
19 else if(x==102)
20 printf("num=%d,name=%s,eng=%d,chn=%d,math=%d\n",b.num,b.name,b.eng,b.chn,b.math);
21 return 0;
22 }
liujinhe@vubunta:~/9.7$ ./test2
101
num=101,name=liu,eng=30,chn=40,math=50
liujinhe@vubunta:~/9.7$ ./test2
102
num=102,name=wu,eng=40,chn=50,math=60
三.
1 #include<stdio.h>
2 typedef struct
3 {
4 int num;
5 char name[100];
6 int eng;
7 int chn;
8 int math;
9 } mystu;
10 mystu a={101,"liu",30,40,50},b={102,"wu",40,50,60};
11 int main(void)
12 {
13 // int x;
14 // scanf("%d",&x);
15 // scanf("%d%d%d",&(a.eng),&(a.chn),&(a.math));
16 int avg1,avg2;
17 // if(x==101)
18 printf("num=%d,name=%s,eng=%d,chn=%d,math=%d\n",a.num,a.name,a.eng,a.chn,a.math);
19 printf("avg1=%d\n",(a.eng+a.chn+a.math)/3);
20 // scanf("%d%d%d",&(b.eng),&(b.chn),&(b.math));
21 // else if(x==102)
22 printf("num=%d,name=%s,eng=%d,chn=%d,math=%d\n",b.num,b.name,b.eng,b.chn,b.math);
23 printf("avg2=%d\n",(b.eng+b.chn+b.math)/3);
24 printf("\n");
25 return 0;
26 }
liujinhe@vubunta:~/9.7$ ./test3
num=101,name=liu,eng=30,chn=40,math=50
avg1=40num=102,name=wu,eng=40,chn=50,math=60
avg2=50liujinhe@vubunta:~/9.7$
四.
1 #include<stdio.h>
2 #include<string.h>
3 typedef struct
4 {
5 int num;
6 char name[100];
7 int score[3];
8 } mystu;
9 mystu a={101,"liu",30,40,50},b={102,"wu",40,50,60},c={103,"wang",50,60,70};
10 int main(void)
11 {
12 int x=0,y=0,z=0;
13 x=((a.score[0])+(a.score[1])+(a.score[2]));
14 y=((b.score[0])+(b.score[1])+(b.score[2]));
15 z=((c.score[0])+(c.score[1])+(c.score[2]));
16 if(x>y&&x>z)
17 printf("总成绩为%d,为%s,成绩为%d,%d,%d\n",x,a.name,a.score[0],a.score[1],a.score[2]);
18 else if(y>x&&y>z)
19 printf("总成绩为%d,为%s,成绩为%d,%d,%d\n",y,b.name,b.score[0],b.score[1],b.score[2]);
20 else if(z>x&&z>y)
21 printf("总成绩为%d,为%s,成绩为%d,%d,%d\n",z,c.name,c.score[0],c.score[1],c.score[2]);
22 return 0;
23 }
liujinhe@vubunta:~/9.7$ ./test4
总成绩为180,为wang,成绩为50,60,70