본문 바로가기
Programming/Algorithm

c언어로 짠 띄어쓰기 기준으로 문자열 순서만 뒤집기

by 제타 2018. 4. 20.
반응형

문자열의 순서를 뒤집어서 쓰되 문자열 개개는 순서를 유지하는 코드이다.

예를 들어 문자열 "I am zeta "를 "zeta am I" 뒤집는 코드이다.

쉽게 생각해서 띄어쓰기(스페이스 바) 기준으로 순서만 뒤집어보자.


코드는 다음과 같다.


#include <stdio.h>

int main(void){

char * str = "I am zeta";


char str2[100];

int space=0;

int len=0;


while(str[len] != '\0'){


if(str[len] == ' ')

space++;

len++;

}

str2[len]='\0';


int k=0;

int gan=0;

int t=0;

for(int i=len-1;i>=0;i--){

gan++;

if(str[i] == ' '){

t=i+1;

for(int j=0;j<gan-1;j++){

str2[k++]=str[t++];

}

str2[k++]=' ';

gan=0;

}}


for(int i=0;i<gan;i++){

str2[k++]=str[i];

}


printf("%s ",str2);

}



반응형