|
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <string.h>
void bubblesort(char *sp[], int n); // 버블 소팅하는 부분
void swap(char *to[], char *from[]); // 문자열을 비교하여 교환하는 부분
void main()
{
int n=5,d,i;
char *sp[5]; // 문자열의 포인터를 요소로 가지는 크기가 5인 배열
printf("5개의 입력받을 문자열을 입력하시오\n");
for (i=0 ; i<5 ; i++){
printf("sp[%d]=",i);
scanf("%s",sp);
}
bubblesort(sp, n); // 가나다 순으로 오름차순 정렬
for(d=0; d <= n; d++)
printf("sp[%d] = %s\n", d, sp[d]); // 오름차순 출력
}
void bubblesort(char *v[], int n)
{
int i;
for(n=n-1; n >=0; n -=1)
for(i=0; i<n; i++){
if(strcmp(v[i], v[i+1]) > 0)
swap(v+i, v+i+1); // 앞 문자열이 크면 서로 위치 바꿈
}
}
void swap(char *to[], char *from[]) // 포인터 조작에 의한 위치 교환
{
char *temp;
temp = *from
*from = *to;
*to = temp;.
}
|