나는 지금 작가 블록을 가지고 있습니다.C - 배열의 char 문자열을 같은 char 사용자 입력으로 정렬합니다.
내가 원하는 것은 newWord가 wordInput과 같은지 확인하는 정렬을 사용하고, 그렇지 않으면 문자가 나타날 때까지 문자를 계속 스왑합니다. 예를 들어, wordInput이 poop이고 newWord가 oopp이라고 가정 해 봅시다. newWord가 결국에는 똥으로 변하기를 바랍니까, 어떻게하면 될까요?
이것은 내가 지금까지 가지고있는 코드입니다.
#include<stdio.h>
#include<string.h>
int main(){
char wordInput[25];
char newWord[25];
char tmp;
int len;
int a, b;
wordInput = "poop";
newWord = "oopp";
len = strlen(newWord);
// Sort back to wordInput
for(a = 1; a < len; a++){
for(b = 0; b < len - a; b++){
if(newWord[b] != wordInput[b]){
tmp = newWord[b];
newWord[b] = newWord[b + 1];
newWord[b + 1 ] = tmp;
}
}
}
printf("Back to original input: %s\n", newWord);
}
'wordInput' 여전히 원래 문자열을 보유하고 있기 때문에, 왜 그냥 나에서'strcpy'를 사용하지? – simonc
예, 물론입니다. – 0decimal0
원본 입력으로 다시 정렬하는 데 도움을 얻은 후에는 각 스왑 후에 "newWord"가 무엇인지 표시하고 싶습니다. 예를 들면 다음과 같습니다. poop -> oopp -> opop -> poop – chakolatemilk