#include <stdio.h>
#define N 3
struct student {
int id, eng, math, sci;
};
int main() {
int i, j, sum1, sum2;
struct student tmp;
struct student s[N] = {
{17001, 60, 100, 20},
{17002, 90, 40, 80},
{17003, 20, 30, 50}
};
for(i = 0; i < N - 1; i++) {
for(j = 0; j < N - 1 - i; j++) {
sum1 = s[j].eng + s[j].math + s[j].sci;
sum2 = s[j+1].eng + s[j+1].math + s[j+1].sci;
if(sum1 > sum2) {
tmp = s[j];
s[j] = s[j+1];
s[j+1] = tmp;
}
}
}
for(i = 0; i < N; i++) {
s[i].id,
s[i].eng,
s[i].math,
s[i].sci,
s[i].eng + s[i].math + s[i].sci);
}
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgojZGVmaW5lIE4gMwoKc3RydWN0IHN0dWRlbnQgewogICAgaW50IGlkLCBlbmcsIG1hdGgsIHNjaTsKfTsKCmludCBtYWluKCkgewogIGludCBpLCBqLCBzdW0xLCBzdW0yOwogICAgc3RydWN0IHN0dWRlbnQgdG1wOwoKICAgIHN0cnVjdCBzdHVkZW50IHNbTl0gPSB7CiAgICAgICAgezE3MDAxLCA2MCwgMTAwLCAyMH0sCiAgICAgICAgezE3MDAyLCA5MCwgNDAsIDgwfSwKICAgICAgICB7MTcwMDMsIDIwLCAzMCwgNTB9CiAgICB9OwoKICBmb3IoaSA9IDA7IGkgPCBOIC0gMTsgaSsrKSB7CiAgICBmb3IoaiA9IDA7IGogPCBOIC0gMSAtIGk7IGorKykgewogICAgICAgIHN1bTEgPSBzW2pdLmVuZyArIHNbal0ubWF0aCArIHNbal0uc2NpOwogICAgICAgIHN1bTIgPSBzW2orMV0uZW5nICsgc1tqKzFdLm1hdGggKyBzW2orMV0uc2NpOwoKICAgICAgICAgaWYoc3VtMSA+IHN1bTIpIHsKICAgICAgICAgICAgIHRtcCA9IHNbal07CiAgICAgICAgICAgICBzW2pdID0gc1tqKzFdOwogICAgICAgICAgICAgc1tqKzFdID0gdG1wOwogICAgICAgIH0KICAgICB9CiAgfQoKICAgIGZvcihpID0gMDsgaSA8IE47IGkrKykgewogICAgICBwcmludGYoIiVkICVkICVkICVkIOWQiOioiD0lZFxuIiwKICAgICAgICAgICBzW2ldLmlkLAogICAgICAgICAgIHNbaV0uZW5nLAogICAgICAgICAgIHNbaV0ubWF0aCwKICAgICAgICAgICBzW2ldLnNjaSwKICAgICAgICAgICBzW2ldLmVuZyArIHNbaV0ubWF0aCArIHNbaV0uc2NpKTsKICB9CgpyZXR1cm4gMDsKfQo=