소프트웨어/C/C++

순위구하기 알고리즘

cs만두 2012. 4. 1. 16:53

#include<stdio.h>

int main()
{

 char name[5][20]={"kim","rock","Michel","jan","joh"};
 int score[5]={90 , 70,60, 95,100};

 int i,j,rank;

 for(i=0; i<5; i++)
 {
  rank=1;
  for(j=0;j<5;j++)
  {
   if(score[i]<score[j])
    rank++;
   
  }
  printf("%5s의 점수: %3d, 석차: %3d \n",name[i],score[i],rank);
 }


system("pause");
return 0;

}

 

score[i]가 고정되어있을때 나머지 score[j]들과 비교를 한다

( if(score[i]<score[j]), 즉 i스코어가 j스코어가 작을때 참이므로 if문내에서 랭크를 점점 올린다(=순위를 점점 내린다...말이이상하네..?))