도전 1

#include <stdio.h>

void odd(int* ptr, int len)
{
	int i, num;
	
	printf("홀수: ");
	for (i = 0; i < len; i++)
	{
		num = *(ptr + i);
		if (num% 2 != 0)
			printf("%d ", num);
	}

}

void even(int* ptr, int len)
{
	int i, num;

	printf("쩍수: ");
	for (i = 0; i < len; i++)
	{
		num = *(ptr + i);
		if (num % 2 == 0)
			printf("%d ", num);
	}
}

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

	for (i = 0; i < 10; i++)
	{
		printf("정수 입력:");
		scanf("%d", arr + i);
	}

	odd(ptr, len);
	printf("\n");
	even(ptr, len);

	return 0;
}

도전2

#include <stdio.h>

int main(void)
{
	int result, cnt = 0;
	int remain[50];

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

	while (result != 0)
	{
		remain[cnt] = result % 2;
		result /= 2;
		cnt++;
	}

	while (cnt > 0)
		printf("%d", remain[--cnt]);
	return 0;
}

 

도전 3

#include <stdio.h>

int main(void)
{
	int arr[10];
	int i, num, f = 0, b = 9;

	for (i = 0; i < 10; i++) // while (f != b + 1)
	{
		printf("입력: ");
		scanf("%d", &num);
		if (num % 2 != 0)
			arr[f++] = num;
		else
			arr[b--] = num;
	}

	printf("배열요소의 출력: ");
	for (i = 0; i < 10; i++)
		printf("%d ", arr[i]);

	return 
}

도전 4

#include <stdio.h>

int lenstr(char * ptr)  // 포인터형 주의
{
	int cnt=0;
	while (ptr[cnt] != '\0')
		cnt++;
	return cnt;
}

int main(void)
{
	char str[50];
	int i, len;

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

	len = lenstr(str);

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

도전 5

#include <stdio.h>

void DesSort(int ary[], int len);

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

	for (i = 0; i < len; i++)
	{
		printf("입력: ");
		scanf("%d", arr + i);
	}

	DesSort(arr, len);

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

	return 0;
}

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

도전 5

#include <stdio.h>

void BubbleSort(int ary[], int len);

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

	for (i = 0; i < len; i++)
	{
		printf("입력: ");
		scanf("%d", arr + i);
	}

	BubbleSort(arr, len);

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

	return 0;
}

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

+ Recent posts