The main issue that causes a segmentation fault is line 22 - printf ("Name: %s \n", name);
This is because you are printing a string, while name is 1 character. If I enter my name, only the first letter entered is actually written to the name variable. If you want to take a full name, you may either make an array of an unitialised size (not available in some languages), make an array of a certain size (but what if user name is not 10 characters long?) or a pointer to a string (that allocates a new byte for each character entered, not forgetting to add termination character \0).
Also, the gets() function you are using is deprecated and dangerous. Alternatives are fgets or scanf (using either %s or %[^\n] ) but this may depend on what method you use to get the user's name.
Further, line 21 has a logic error which produces a negative age, e.g. if i enter 2000, age will be -20 not 20, so need to swap variables around. Alternatively, instead of having to manually update the defining of YEARNOW when going into 2021, you can get the current year, change to numeric value instead of string using atoi().
A bit more of an updated version of code:
#pragma warning (disable:4996)
int bornYear, score1, score2, score3, ageNow;
printf("Enter Name: ");
printf("Enter the year you were born: ");
printf("Enter your score for 3 papers \nPaper 1: ");
printf("Paper 2: ");
printf("Paper 3: ");
ageNow = atoi(__DATE__+7) - bornYear;
printf("\nName: %c \n", name); //currently set to %c to prevent segmentation fault
printf("Age: %d \n", ageNow);
printf("Paper 1 score: %d \n", score1);
printf("Paper 2 score: %d \n", score2);
printf("Paper 3 score: %d \n", score3);