私はCの配列を使用して、以下のコードについて書きました。
私は=>I am a boy.
に入ったときに所望の出力は、ここ=>boy a am I.
は、以下の私のコードであり、それは動作しませんです。
私は2日間のバグを発見したと、他の人があなたのコードで複数の問題がある指摘したように、私はまだ問題C about words reverse
int i,j,k,m,start,temp_end,len;
char str[30];
gets(str);
len=strlen(str);
temp_end=len-1;
for(k=len;k>0;k--)
{
if(str[k]==" ")
start=k;
for(j=start+1;j<temp_end;j++)
{
printf("%c",str[j]);
}
printf(" ");
temp_end=k;
}
for(m=0;m<temp_end;m++)
{
printf("%2c.",str[m]);
}
'if(str [k] ==" ")'では、 '' ''は文字ではなく文字列です。代わりに 'if(str [k] == '')'を試してください。 – user3386109
"動作しません"。それではどうしますか?あなたは問題を見つけるのを助けるためにデバッガを使ってみましたか?しかし、最初の 'if(str [k] ==" ")'は間違っています。 'str [k]'は 'char'ですが' '' 'は文字列です。 – kaylum
申し訳ありませんが、私の言葉を変更する必要があります – Hardy