입력된 영단어가 회문인지 아닌지 판별하는 프로그램을 작성하라.(편의를 위해 대소문자 구분)
작성 코드
#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
회문이 아닙니다.
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