hey i want to know HOW DO YOU PUT THINGS IN ORDER. FOR EXAMPLE (PAY ATTENTION TO THIS BIT) JOHN HAS 10 APPLES OVER ALL , SARAH HAS 7 APPLES, PETER HAS 4 APPLES AND KATE HAS 2 APPLES. INSTEAD OF PRINTING OUT IN UN-DESCENDING ORDER I WANT TO PRINT THEM OUT IN DESCENDING ORDER FROM GREATEST TO LEAST AMOUNT OF APPLES EACH HAS BUT THE PROBLEM IS GUYS.... GUESS WHAT??? I WONT KNOW HOW MANY APPLES THEY WILL EACH HAVE AT THE END OF APPLE PICKING. SO INSTEAD OF GOING "IF JOHN HAS GREATER APPLES THAN SARAH AND GREATER APPLES THAT KATE AND GREATER APPLES THAN KATE... THEN PUT HIM AT THE TOP OF THE TABLE. AND THEN GOING WELL IF JOHN DOESNT HAVE THE MOST APPLES AND KATE HAS MORE THAN JOHN BUT LESS THAN PETER BUT MORE THAN SARAH THEN PUT HER SECOND AND BLA BLA BLA BLA...!!! I WANT TO FIND OUT A SIMPLE WAY OF SORTING THINGS. PLEASE HELP. YOU CAN SENSE MY FRUSTRATION. HERE IS MY CODE OF A LEAGUE TABLE WITH A SIMILAR ISSUE BECAUSE I WANT TO SORT OUT WHO GOES AT THE TOP OF THE TABLE, THEN SECOND AND SO ON UNTIL LAST ACCORDING TO THEIR OVERALL POINTS WHICH ARE ACCUMULATED BY WINNING AND DRAWING GAMES!!!!!!!!!!
Code:
#include <stdio.h>
#include <stdlib.h>
struct bones
{
char name[20];
int played;
int scored;
int won;
int drawn;
int lost;
int points;
};
struct bones team[4];
int main()
{
int i;
for(i=0;i<4;i++)
{
team[i].played = 0;
team[i].won = 0;
team[i].scored = 0;
team[i].lost = 0;
team[i].drawn = 0;
team[i].points = 0;
}
for(i=0;i<4;i++)
{
printf("enter each team name\n");
fgets(team[i].name, 20, stdin);
}
for(i=1;i<4;i++)
{
printf("%s \tvs\t%s\n",team[0].name,team[i].name);
printf("%s \tscore:",team[0].name);
scanf("%d",&team[0].scored);
printf("%s \tscore:",team[i].name);
scanf("%d",&team[i].scored);
team[0].played++;
team[i].played++;
if(team[0].scored > team[i].scored)
{
team[0].won++;
team[0].points += 3;
team[i].lost++;
}
else if(team[0].scored == team[i].scored)
{
team[0].drawn++;
team[i].drawn++;
team[0].points += 1;
team[i].points += 1;
}
else
{
team[i].won++;
team[i].points += 3;
team[0].lost++;
}
}
for(i=2;i<4;i++)
{
printf("%s \tvs\t %s\n",team[1].name,team[i].name);
printf("%s \tscore:",team[1].name);
scanf("%d",&team[1].scored);
printf("%s \tscore:",team[i].name);
scanf("%d",&team[i].scored);
team[1].played++;
team[i].played++;
if(team[1].scored > team[i].scored)
{
team[1].won++;
team[1].points += 3;
team[i].lost++;
}
else if(team[1].scored == team[i].scored)
{
team[1].drawn++;
team[i].drawn++;
team[1].points += 1;
team[i].points += 1;
}
else
{
team[i].won++;
team[i].points += 3;
team[1].lost++;
}
}
for(i=3;i<4;i++)
{
printf("%s \tvs\t %s\n",team[2].name,team[i].name);
printf("%s \tscore:",team[2].name);
scanf("%d",&team[2].scored);
printf("%s \tscore:",team[i].name);
scanf("%d",&team[i].scored);
team[2].played++;
team[i].played++;
if(team[2].scored > team[i].scored)
{
team[2].won++;
team[2].points += 3;
team[i].lost++;
}
else if(team[2].scored == team[i].scored)
{
team[2].drawn++;
team[i].drawn++;
team[2].points += 1;
team[i].points += 1;
}
else
{
team[i].won++;
team[i].points += 3;
team[2].lost++;
}
}
printf("team played won drawn lost points\n");
printf("\n");
for(i=0;i<4;i++)
{
printf("%s %d %d %d %d %d",team[i].name,team[i].played,team[i].won,team[i].drawn,team[i].lost,team[i].points);
printf("\n");
}
return(0);
}