You have two problems. First
Code:
if(specificage == a)
a here is treated as a variable. If you want to check that the user input the letter a, you need to put single quotes around it: 'a'. If you want a string containing one character, the letter a, use double quotes: "a"
Second, specificage is a char array/string. You can't compare strings with ==. You can compare individual characters in the string/array with ==, or use strcmp/strncmp:
Code:
if (strcmp(specificage, "some string") == 0) // strcmp returns 0 if they're equal
// or
if (specificage[3] == 'q') // check that the 4th (remember, arrays in C start at 0) character is a 'q'
I'm guessing you were more interested in the second example.
Two more notes:
1. fgets leaves the newline character (remember, the user pressed enter after 'a' or 'b'). If I enter "foo" followed by enter, the string fgets gives back contains "foo\n". If you do strcmp, it will not match "foo", since the \n is significant. If you need to get rid of it, use the strchr trick here:
FAQ > Get a line of text from the user/keyboard (C) - Cprogramming.com.
2. The user may enter uppercase 'A' or 'B' for some reason, your program should handle it. Easy enough, use the toupper() or tolower() functions before comparing (remember to #include <ctype.h>)