Я хочу сделать функцию в C, но невежественный, что делать я знаю, как сделать это с целыми числами, а не с символов/строкфункция символов в C
printf("\nEnter player %d name: ", i);
scanf ("%s", playername[i]);
Это позволяет мне читать имя. % D просто номер выше
Я хочу создать функцию, где она генерирует случайное число (я знаю, как сделать это), а затем распечатать приветственное сообщение
Так что-то вроде этого
int grmessage;
grmessage = rand() %4;
srand (time(NULL));
if (grmessage == 0)
printf("Welcome to the game, %s!\n" , playername[i]);
else if (grmessage == 1)
printf("Hello %s and welcome!\n" , playername[i]);
else if (grmessage == 2)
printf("%s has joined us! Say hello!\n" , playername[i]);
else if (grmessage == 3)
printf("Pleasure to have you in this game %s!\n" , playername[i]);
else if (grmessage == 4)
printf("Why hello there %s!\n" , playername[i]);
else
printf("Say hello to %s who has entered the game.\n" , playername[i]);
Теперь кто-то может сказать мне, как поставить выше блок кода в функции
Так по существу
...
void texter (char a) { my code above }
, а затем, когда я снова вызову эту функцию, чтобы он распечатать текст
printf("\nEnter player %d name: ", i);
scanf ("%s", playername[i]);
texter (playername[i]);
Я знаю, что я уже дал код буквально, но только нужно, чтобы исправить это и сделать его работу, как это то, что я если бы это было целое число
Я не понял этого требования ... вы можете немного подробнее? –
Покажите свою декларацию для 'playername'. Также рассмотрите возможность использования * линейно ориентированных * функций для ввода пользователем (например, 'fgets' или POSIX' getline'), а не семейства 'scanf'. Существует множество опасностей для новых программистов на C в scanf. Это нормально использовать, если вы полностью понимаете 'man scanf', в противном случае обратите особое внимание на то, что осталось в' stdin'. –