[윤성우의 열혈 C프로그래밍] 도전 프로그래밍2 풀이

3552 단어 CC

1

#include <stdio.h>

void print_odd(int arr[], int len) {
	printf("홀수 출력: ");
	for (int i = 0; i < len; i++) {
		if (*(arr + i) % 2 == 1) {
			printf("%d ", *(arr + i));
		}
	}
	printf("\n");
}

void print_even(int arr[], int len) {
	printf("짝수 출력: ");
	for (int i = 0; i < len; i++) {
		if (*(arr + i) % 2 == 0) {
			printf("%d ", *(arr + i));
		}
	}
	printf("\n");
}

int main(void) {
	int arr[10];
	int len = sizeof(arr)/sizeof(int);

	for (int i = 0; i < 10; i++) {
		printf("입력: ", i + 1);
		scanf("%d", &arr[i]);
	}

	print_odd(arr, len);
	print_even(arr, len);

}코드를 입력하세요



2

#include <stdio.h>


int main(void) {
	int n, i = 0;
	int arr[100];

	printf("10진수 정수 입력: ");
	scanf("%d", &n);

	while (n / 2 > 0) {
		arr[i] = n%2; //나머지
		n /= 2; //몫
		i++;
	}

	arr[i] = 1;
	
	
	for (int j = i; j >= 0; j--) {
		printf("%d", arr[j]);
	}

}



3

#include <stdio.h>


int main(void) {
	int arr[10];
	int n, odd_count = 0, even_count = 0;


	for (int i = 0; i < 10; i++) {
		printf("입력:");
		scanf("%d", &n);
		if (n % 2 == 1) {
			arr[odd_count++] = n;
		}
		else {
			arr[(9 - (even_count++))] = n;
		}
	}

	for (int i = 0; i < 10; i++) {
		printf("%d ", arr[i]);
	}
}



4

#include <stdio.h>

int str_len(char str[]) {
	int i = 0;
	while (str[i] != '\0') {
		i++;
	}
	return i;
} //문자열 길이를 반환하는 함수.

int main(void) {
	char palindrome[50];
	int len, count = 0;

	printf("문자열 입력: ");
	scanf("%s", palindrome);

	len = str_len(palindrome);

	for (int i = 0; i < len / 2; i++) {
		if (palindrome[i] == palindrome[len - i - 1]) {
			count++;
		}
		else {
			break;
		}
	}

	if (count == len/2) {
		printf("회문 입니다.");
	}
	else {
		printf("회문이 아닙니다.");
	}
}



5

#include <stdio.h>

void BubbleSort(int arr[], int len) {
	int temp;

	for (int i = 0; i < len; i++) {
		for (int j = 0; j < len - i - 1; j++) {
			if (arr[j] > arr[j + 1]) {
				temp = arr[j];
				arr[j] = arr[j + 1];
				arr[j + 1] = temp;
			}
		}
	}
} //오름차순

void BubbleSort2(int arr[], int len) {
	int temp;

	for (int i = 0; i < len; i++) {
		for (int j = 0; j < len - i - 1; j++) {
			if (arr[j] < arr[j + 1]) {
				temp = arr[j];
				arr[j] = arr[j + 1];
				arr[j + 1] = temp;
			}
		}
	}
} //내림차순

int main(void) {
	int arr[7];
	int len = sizeof(arr) / sizeof(int);

	for (int i = 0; i < len; i++) {
		printf("입력:");
		scanf("%d", &arr[i]);
	}
	
	//BubbleSort(arr, len);
	BubbleSort2(arr, len);

	for (int i = 0; i < len; i++) {
		printf("%d ", arr[i]);
	}


}

좋은 웹페이지 즐겨찾기