整数配列に値を格納するために&演算子を入れる必要があるのに、char配列に文字列を格納する必要があるのはなぜですか?scanf()
int a[5];
for(i=0;i<5;i++)
scanf("%d",&a[i]);
しかし
char s[5]; scanf("%s",s);
配列は最初の要素へのポインタであるため、値を格納する場所のアドレスを渡す必要があります。したがって、int / float配列の場合、基本的にはを意味し(a+i)ます。
しかし、文字列の場合はどうでしょうか?