본문 바로가기

C 언어/연습문제

C언어 연습문제4

[문제]

사용자로부터 영단어를 입력 받아서 char형 배열에 저장한다. 그 다음 배열에 저장된 영단어를 역순으로 뒤집는다. 그리고 역순으로 뒤집은 단어를 출력한다.

조건1) 배열을 하나만 사용할 것

 

[실행결과]

단어 입력: banana
ananab

 

[코드]

#include<stdio.h>

int main(void)
{
	char voca[100];
	char temp;
	int i, len = 0;

	printf("단어 입력: ");
	scanf_s("%s", voca, 100);

	while (voca[len] != '\0')
		len++;

	for (i = 0; i < len / 2; i++)
	{
		temp = voca[i];
		voca[i] = voca[(len - i) - 1];
		voca[(len - i) - 1] = temp;
	}
	printf("%s", voca);
	return 0;
}

[연습 코드1]

#include<stdio.h>

#define LEN 30
void ReverseArr(char* ori, int len);

int main(void)
{
	char arr[LEN];
	int len;

	printf("단어 입력: ");
	scanf_s("%s", arr, LEN);
	len = strlen(arr);
	ReverseArr(arr, len);
	printf("%s", arr);

	return 0;
}

void ReverseArr(char* ori, int len)
{
	char temp;

	for (int i = 0; i < len / 2; i++)
	{
		temp = ori[i];
		ori[i] = ori[len - i - 1];
		ori[len - i - 1] = temp;
	}
}

<참고>

윤성우의 열혈 C 프로그래밍

'C 언어 > 연습문제' 카테고리의 다른 글

C언어 연습문제6  (0) 2021.11.10
C언어 연습문제5  (0) 2021.11.05
C언어 연습문제3  (0) 2021.10.26
C언어 연습문제2  (0) 2021.10.25
C언어 연습문제1  (0) 2021.10.25