這裏是初學程序員。我正在嘗試從用戶那裏獲得一個輸入,將其反轉並顯示結果。出於某種原因,它是打印空白而不是反轉字符串。我知道array[i]
有正確的信息,因爲如果我在for (int i=0; i<count; i++)
行上使用此循環,它會打印正確的字符。它只是不反向打印。我不在這裏?使用循環在C中反轉字符串
#include <stdio.h>
#include <cs50.h>
#include <string.h>
int main(void)
{
printf("Please enter a word: ");
char *word = get_string();
int count = strlen(word);
char array[count];
for (int i=0; i< count; i++)
{
array[i] = word[i];
}
for (int i=count-1; i==0; i--)
{
printf("%c ", array[i]);
}
printf("\n");
}
你的條件是錯誤的。它應該是:'for(int i = count-1; i> = 0; i - )' –
將輸入逐字複製到別的地方有什麼意義呢?爲什麼不直接從它所在的位置打印呢? –
如果你想扭轉字符串,你的第一個for循環必須改變。一個陣列將其他數字倒數 –