Нужно преобразовать программу. Си

Нужно преобразовать программу.Си.
Последнее слово строки поставить после первого.

Код программы:

#include
#include
#include
#include
#include
int main ()
{
setlocale (LC_ALL,"Russian");
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
char str1[]=""; int i,k,d;
printf ("Введите строку: ");
gets (str1);
k=0;i=0;
while (str1!=' '){
i++;
}
k=i; //Окончание первого слова
for (i=0;i==' ') d=i;} //Нахождение последнего пробела (начало последнего слова)
printf ("Ответ: ");
for (i=0;i);} //Вывод первого слова
for (i=d;i); //Вывод последнего слова, то есть вставка его после первого
}
for (i=k;i); //Вывод остальных слов (символов)
}
getch ();
}

Нужное условие: Переставить первое слово в конец строки.

  • #include
    #include
    #include
    #include
    #include
    int main ()
    {
    setlocale (LC_ALL,"Russian");
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);

    char str1[1024];
    int i, k, d;

    printf ("Введите строку: ");
    gets(str1);

    k = i = 0;

    while (str1!=' ')
    i++;
    k = i; //Окончание первого слова

    for (i = 0; i < strlen(str1); i++)
    {
    if( str1 == ' ' )
    d = i;
    } //Нахождение последнего пробела (начало последнего слова)

    printf ("Ответ: ");
    for (i = 0; i < k; i++)
    printf("%c", str1); //Вывод первого слова

    for (i = d; i < strlen(str1); i++)
    printf("%c", str1); //Вывод последнего слова, то есть вставка его после первого

    for (i = k; i < d; i++)
    printf("%c", str1); //Вывод остальных слов (символов)

    getch ();
    }