Turbo-C ++ является древним .Есть бесплатные компиляторы, которые намного лучше.Хотя я понимаю, что в некоторых странах, к сожалению, это все еще требуется педагогам.Однако, если есть какой-то способ, которым вы можете использовать альтернативу, вы должны.Код, который вы учитесь писать прямо сейчас, не будет компилироваться на компиляторах, фактически используемых в промышленности.Это создаст проблемы для вас на будущих работах.
gets
- худшая функция из когда-либо превращенных в стандартную языковую библиотеку.Нельзя правильно использовать.Никогда не используйте это.Удалите его существование из своего разума.
Не смешивайте ввод-вывод C и C ++.Это приводит к сложным проблемам, когда они не синхронизированы.Используйте один или другой, исключительно.Если вы используете CI / O, используйте scanf
и fgets
с stdin
, а не gets
.Если вы используете C ++ I / O, используйте исключительно cin
.Обратите внимание, что анализ даты "d / m / y" с cin
немного сложен.С другой стороны, использование cin
позволит вам использовать string
вместо массивов символов, что будет бесконечно лучше.(Например, это может означать, что вы можете вводить имена длиннее 9 символов, не заставляя вашу программу делать странные вещи.)
Gend
, вероятно, должен быть одним char
вместо указателя, указывающего на ничто.Эта часть вашей программы просто неверна и, скорее всего, будет плохо себя вести или давать сбой.
Номера телефонов не являются целыми числами.Они часто начинаются с нулей, при обычном использовании содержат знаки препинания и пробелы и достаточно длинные, чтобы переполнять unsigned int
.(В тот момент, когда вы используете префикс области или оператора, целочисленная интерпретация, вероятно, превышает 4000000000.) Всегда используйте строки для хранения телефонных номеров.