일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 802.3
- 802.3 이더넷
- Address Resolution Protocol
- adodb 설치
- AES 암호
- Alternatively build in profile or release modes to enable launching from the home screen
- Android Studio 몰입모드
- Android Studio 몰입모드 설정
- Android Studio 상태바 없애기
- Android Studio 자동 정렬
- android studio 자동정렬
- Android Studio 자동정렬 단축키
- Android Studio 코드 자동정렬
- Android Studio 타이틀바 없애기
- Android Studio 하단 바 없애기
- Android Studio 홈버튼 없애기
- Angler EK
- Angler EK 악성코드
- Angler EK이란
- apache2 tomcat9
- apache2 tomcat9 설치
- apache2 tomcat9 연동
- API
- apk 에러
- apk 오류
- ARP
- arp cache poisoning
- ARP Poisoning
- ARP Request
- ARP 구조
Archives
- Today
- Total
지나가는 이야기
[C] 오름차순 정렬하기 / 버블 정렬 사용하기 본문
728x90
반응형
C언어를 이용하여 배열에 있는 데이터 값을 오름차순으로 정렬하는 프로그램을 만들어 보겠습니다.
int data[8] = { 85,90,95,70,82,60,92,88 };
int data_size = sizeof(data) / sizeof(int);
먼저 정렬할 데이터는 int형 배열로 8개의 값을 초기화했습니다. 그리고 배열의 크기를 동적으로 받았습니다.
for (i = 0; i < data_size; i++) {
for (j = 0; j < (data_size - 1) - i; j++) {
if (data[j] > data[j + 1]) { // 버블 정렬 사용
temp = data[j];
data[j] = data[j + 1];
data[j + 1] = temp;
}
}
}
저는 위 코드에서 보이는 것처럼 for문을 사용을 하여 프로그램을 만들었고, 여러 가지 정렬 알고리즘 중에서 가장 간단한 버블 정렬을 사용했습니다.
#include <stdio.h>
int main(void)
{
int data[8] = { 85,90,95,70,82,60,92,88 }; // 정렬할 배열
int i, j, temp = 0; // 변수 초기화
printf("Before : ");
int data_size = sizeof(data) / sizeof(int);
// sizeof(score) / sizeof(int)는 score배열의 크기를 구하는 방법으로 이것을 이용해 배열의 크기를 가져옴
for (i = 0; i < data_size; i++) {
printf("%4d", data[i]); // 정렬 전 배열값 출력
}
for (i = 0; i < data_size; i++) {
for (j = 0; j < (data_size - 1) - i; j++) {
if (data[j] > data[j + 1]) { // 버블 정렬 사용
temp = data[j];
data[j] = data[j + 1];
data[j + 1] = temp;
}
}
}
printf("\nAfter : ");
for (i = 0; i < data_size; i++) {
printf("%4d", data[i]); // 정렬 후 배열값 출력
}
printf("\n");
return 0;
}
위 코드는 전체 코드입니다. 이렇게 간단한 버블 정렬을 사용해 오름차순으로 정렬하는 프로그램을 만들었습니다.
728x90
반응형
'Computer language : 컴퓨터 언어 > C' 카테고리의 다른 글
[C] 숫자 피라미드 출력 / C언어 기초 (0) | 2022.01.24 |
---|---|
[C] 내림차순 정렬하기 / 버블 정렬 사용하기 (0) | 2020.10.15 |
[C언어] 범위에 속한 숫자 개수 구하기 / 1~N에 속하는 숫자 M의 개수 구하기 (0) | 2020.09.03 |
[C] 엘리베이터 프로그램 (0) | 2020.06.21 |
Comments