1. 랜덤한 숫자를 출력한뒤 sorting 하고 .txt 확장자로 출력하는 프로그램

    1.1. Source Code

------------------------------------------------------------------------------------------------------------------------------------

#define _CRT_SECURE_NO_WARNINGS

 

#include <stdio.h>

 

#include <stdlib.h>// srand rand 함수 사용을 위한 헤더파일

 

#include <time.h>// time 함수 사용을 위한 헤더파일

 

#define FNAME "C:\\준환권20200205_Deleteable\\Rand_Sort.txt" // FNAME 을 경로 상수(?) 로 지정. 한글 폴더도 저장가능

#define EGG 9 //배열의 크기를 지정하는 상수

 

 

int main(void)

 

 

{

    int iArr[EGG];// 배열 선언, EGG 자리에는 #define 으로 지정된 상수만 입력될 수 있음. main(void) 함수 안에서 선언된 어떠한 형태의 변수도 입력불가

 

    int iMid = 0; // Swap 을 위한 변수 선언

 

    int i = 0;

 

    int j = 0;

 

    srand(time(NULL)); // srand는 호출할 때 전달받는 인자를 기반으로 난수를 초기화, time함수는 인자값으로 NULL을 넘기면 1970 1 1 0시 이후부터

                       // 인자값까지 현재까지 흐른 초를 리턴

 

    for (j = 0; j < EGG; j++)

 

    {

 

        iArr[j] = (rand() % 10+1); // iArr srand 로 인해 생성된 값을 바탕으로 난수 생성 % 10 +1  1에서 10 사이의 난수를 생성하라는 뜻

 

    }

   

    FILE *fw; // = fopen(FNAME,"w");  처리할 파일을 가리키는 파일포인터(FILE *)

 

    fopen_s(&fw, FNAME, "w"); // fopen: 파일 포인터에 직접 받음 , fopen_s: 파일 포인터의 주소를 받음

 

    for (j = 0; j < EGG; j++)

 

    {

 

        fprintf(fw, "%d ", iArr[j]); //Sorting 되지 않은 배열값 파일에 쓰기

 

    }

 

    fputs("Sorting 되지 않은 Random numbers\n", fw); // fprintf() 함수는 지정된 스트림에 다양한 서식 변환 문자를 이용하여 문자열을 출력

 

                                                     // fputs() 함수는 단순히 지정된 스트림에 문자열을 출력

 

    for (j = 0; j < EGG; j++) // 배열의 모든 값이 앞,뒤 두개의 값으로 짝지어져 비교되며 if 조건이 만족될경우 서로 자리를 바꿈. 이 작업은 배열의

                              // 크기만큼 반복됨 : BubbleSort

 

    {

 

        for (i = 0; i < EGG - 1; i++)

 

            if (iArr[i] < iArr[i + 1])

 

            {

 

                iMid = iArr[i];

 

                iArr[i] = iArr[i + 1];

 

                iArr[i + 1] = iMid;

 

            }

 

    }

 

 

    for (j = 0; j < EGG; j++)

 

    {

 

        printf("%d ", iArr[j]);

 

    }

 

 

    for (j = 0; j < EGG; j++)

 

    {

 

        fprintf(fw, "%d ", iArr[j]);

 

    }

 

    fprintf(fw, "Sorting Random numbers\n"); // Sorting 된 배열값 파일에 쓰기

 

    fclose(fw); // 파일 닫기

 

    return 0;

    

}

------------------------------------------------------------------------------------------------------------------------------------

1.2. 실행 image

 

1.PNG

 

2.PNG

 

1.3. Bubble sort gif image

bubble sort gif 이미지 검색결과"

Bubble sort

 

bubble sort gif dance 이미지 검색결과"

스스로를 bubble sort 하는 사람들