Code:
scanf("%s", name);
If the user inputs "John Doe", then name would only contain "John". '%s' as is, only inputs the first word, not the entire string. Then the other scanf() calls will fail as the remainder of the input buffer do not match the format strings for numerical strings.

fgets() would be preferred to input text strings. Yes, an alternative version of the format string in scanf() could be used but fgets() is simpler, although it does also bring in the newline that needs to be dealt with.

Phone numbers should be input as a text string, and input using fgets(), not as a number because of the many styles of phone numbers. "1234567890" "(123) 456-7890", ...