배열이나 그 내용을 이해하지 못했는지 모르겠지만 지난 두 시간 동안이 코드에서 문제를 찾고있었습니다. 나는 그것을 실행할 때 무한한 수익률을 얻는다.재귀를 사용하여 역순으로 문자열 사용 - C
#include <stdio.h>
#include <string.h>
void reverse(char string2Reverse[80], int start, int end);
int main(int argc, char *argv[])
{
char string[80];
int cntr;
for(cntr = 0; cntr < 80; cntr++)
string[cntr] = '\0';
int start = 0, end;
while((scanf("s", string)) != EOF)
{
end = 0;
printf("%s ", string);
while(string[end] != '\0')
end++;
end--;
reverse(string, start, end);
end++;
printf("%s\n\n", string);
for(cntr = 0; cntr < end; cntr++)
string[cntr] = '\0';
}
}
void reverse(char string2Reverse[80], int start, int end)
{
if(string2Reverse[start] != string2Reverse[end] && start != end)
{
char temp = string2Reverse[start];
string2Reverse[start] = string2Reverse[end];
string2Reverse[end] = temp;
reverse(string2Reverse, start + 1, end - 1);
}
}
어떤 도움이 좋지 않을까 :
여기에 코드입니다! 내 문제를 찾을 수없는 것 같습니다.
문제를 표시하는 데 필요한만큼만 코드를 제공하면 도움이되는 경우가 종종 있습니다. 여기서 입력을 상수로 대체하는 것이 자동 확인을 어렵게 만들기 때문에 좋은 생각입니다. – pmr