본문 바로가기

Programming/C&C++

[C언어] 난수 발생 예제


  1. #include<stdio.h>
  2. #include<stdlib.h>
  3. #include<time.h>
  4.  
  5. void main() {
  6.     int a[10];
  7.     int i, j;
  8.     int temp; // 값 교환을 위한 임시 변수
  9.  
  10.     srand(time(NULL));
  11.  
  12.     // 0~99사이의 정수 저장
  13.     for(i=0; i<10; i++)
  14.         a[i] = rand()%100// 0~99
  15.  
  16.     // 입력 데이터 출력
  17.     printf("\n * 저장 데이터 출력 * \n");
  18.     for(i=0; i<10; i++)
  19.         printf("%2d ", a[i]);
  20.     puts("")// 줄바꿈
  21.     //정렬
  22.     for(i=0; i<9; i++) // 정렬하려는 변수의 인덱스를 위한 for
  23.     {
  24.         for(j=i+1; j<10; j++) // 비교하려는 변수의 인덱스를 위한 for
  25.         {
  26.             if( a[i] > a[j] ) //기준 값이 비교 값보다 크다면(오름차순 정렬)
  27.             //if( a[i] < a[j] ) // 내림차순 정렬
  28.             {
  29.                 temp = a[i];
  30.                 a[i] = a[j];
  31.                 a[j] = temp;
  32.             }
  33.         }
  34.     }
  35.     // 정렬 후 데이터 출력
  36.     printf("\n* 오름차순 정렬 데이터 출력 *\n");
  37.     for(i=0; i<10; i++)
  38.         printf("%2d ", a[i]);
  39.     puts("")// 줄 바꿈
  40. }