C:도전프로그래밍2

aiden·2023년 4월 6일
0

C

목록 보기
15/28

#4

입력된 영단어가 회문인지 아닌지 판별하는 프로그램을 작성하라.(편의를 위해 대소문자 구분)

작성 코드

#include <stdio.h>
void Palindrome(char str[]); 
int StrLen(char str[]);

int main(void) {
	char word[50];

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

	Palindrome(word);

	return 0;
}

void Palindrome(char str[]) {
	int len = StrLen(str);
	for (int i = 0; i < len / 2; i++) {
		if (str[i] != str[len - i - 1]) {
			printf("회문이 아닙니다.");
			return;
		}
	}
	printf("회문입니다.");
}

int StrLen(char str[]) {
	int len = 0;
	while (str[len] != 0)
		len++;
	return len;
}

문자열 입력 : level
회문입니다.

문자열 입력 : noon
회문입니다.

문자열 입력 : cookie
회문이 아닙니다.

문자열 입력 : party
회문이 아닙니다.

#5

Bubble Sort 올림차순/내림차순 함수 정의
사용자로부터 정수 7개를 입력받아 길이가 7인 int형 배열에 저장하고, 버블소트 방식으로 올림차순, 내림차순 정렬한다.

작성 코드

#include <stdio.h>
void BubbleSort(int arr[], int len);
void DesSort(int arr[], int len);

int main(void) {
	int arr[7];

	for (int i = 0; i < 7; i++) {
		printf("입력 : ");
		scanf("%d", arr + i);
	}
	
	BubbleSort(arr, 7);
	printf("오름차순 : ");
	for (int i = 0; i < 7; i++)
		printf("%d ", arr[i]);
	printf("\n");

	DesSort(arr, 7);
	printf("내림차순 : ");
	for (int i = 0; i < 7; i++)
		printf("%d ", arr[i]);
	printf("\n");

	return 0;
}

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

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

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

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

입력 : 1
입력 : 2
입력 : 3
입력 : 4
입력 : 5
입력 : 6
입력 : 7
오름차순 : 1 2 3 4 5 6 7
내림차순 : 7 6 5 4 3 2 1

입력 : 7
입력 : 6
입력 : 5
입력 : 4
입력 : 3
입력 : 2
입력 : 1
오름차순 : 1 2 3 4 5 6 7
내림차순 : 7 6 5 4 3 2 1

입력 : 4
입력 : 3
입력 : 5
입력 : 1
입력 : 7
입력 : 2
입력 : 6
오름차순 : 1 2 3 4 5 6 7
내림차순 : 7 6 5 4 3 2 1

profile
파인애플 좋아하세요?

0개의 댓글