Помимо пары нит (см. Ниже), код выглядит нормально.Лично я бы изменил
if(!(strncmp(names[i],"A",1)))
на
if(names[i][0] == 'A')
или, что еще лучше,
if(tolower(names[i][0]) == 'a') // case-insensitive test; make sure ctype.h
// has been #included
Nits:
НИКОГДАНИКОГДА, НИКОГДА, НИКОГДА, НИКОГДА не используйте gets()
;это небезопасно и создает дыру в безопасности, которую легко использовать вредоносные программы.
Измените
gets(names[i]);
на
fgets(names[i], sizeof names[i], stdin);
и представьте, что вы никогда не слышали о gets()
.
Также убедитесь, что в документации вашего компилятора явно указано, что «void main (void)» является действительной подписью;не все компиляторы поддерживают это (стандартные подписи для main
либо int main(void)
, либо int main(int argc, char **argv)
).