버블

언어/c언어2018. 10. 8. 23:10

# include <stdio.h>

# include <stdlib.h>

# include <time.h>

# define LEN 6

typedef struct nData {

int x[LEN];

}nData, *pNdata;

//========================================

void _init_(nData** nparam);

void _bubbleSort_(nData** nparam);

void _last_(nData** nparam);

//========================================

int main(void) {

srand((unsigned)time(NULL));

pNdata node = NULL;

node = (pNdata)malloc(sizeof(nData));

_init_(&node);

_bubbleSort_(&node);

_last_(&node);

free(node);

return 0;

} // end of main function 

//========================================

void _init_(nData** nparam) {

int i; 

printf("초기값 : ");

for (i = 0; i < LEN; i++) {

*((*nparam)->x + i) = rand() % 100 + 1;

printf("%2d", *((*nparam)->x + i));

if (i != LEN - 1) {

printf(" ");

}

}

printf("\n");

} // end of _init_ function

//========================================

void _bubbleSort_(nData** nparam) {

int i, j, k;

int temp = 0;

for (i = 1; i <= LEN-1; i++) {

printf("%2d단계 : ", i);

for (j = 0; j < LEN-1; j++) {

if ((** nparam).x[j] > (** nparam).x[j + 1]) {

temp = (** nparam).x[j];

(** nparam).x[j] = (** nparam).x[j + 1];

(** nparam).x[j + 1] = temp;

}

}

for (k = 0; k < LEN; k++) {

printf("%2d", *((*nparam)->x + k));

if (k != LEN - 1) {

printf(" ");

}

}

printf("\n");

}

} // end of _bubbleSort_ function

void _last_(nData** nparam) {

int i;

printf("정렬결과 : ");

for (i = 0; i < LEN; i++) {

printf("%2d", *((*nparam)->x + i));

if (i != LEN - 1) {

printf(" ");

}

}

printf("\n");

} // end of _last_ function 



'언어 > c언어' 카테고리의 다른 글

지식인 풀이  (0) 2018.10.09
행렬  (0) 2018.10.09
해공예  (0) 2018.10.07
네이버 ( 2018_10_07)  (0) 2018.10.07
Naver_지식인  (0) 2018.09.25