본문 바로가기

소프트웨어/C/C++

순위구하기 알고리즘

#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문내에서 랭크를 점점 올린다(=순위를 점점 내린다...말이이상하네..?))

 

 

'소프트웨어 > C/C++' 카테고리의 다른 글

객체] public, protected, private  (0) 2013.08.11
c/c++] 클래스 동적할당  (0) 2013.08.10
c++] 동적할당실패시 예외처리  (0) 2013.08.10
c/c++] malloc은 void*를 리턴  (0) 2013.08.10
C/C++] 구조체의 크기  (0) 2013.08.10
후위표기법 C언어  (0) 2012.05.07
데이터 검색  (0) 2012.04.01