Well, yes, you can do it that way. However, what you can do is not always a good idea.
Neither the casting nor the magic values (81 and 113) are required. By using them, you're making your code both harder to read and not portable.
Assuming your character set is based on ASCII (and you're doing this to convert a 'Q' to a 'q') then the more readable (direct) equivalent of your code is
Code:
if (selectOption == 'Q')
{
selectOption = 'q';
}
The advantage of this is it would work with ANY character set that contains uppercase 'Q' and lowercase 'q', not just ASCII and related character sets (and, yes, there are real-world compilers that support other character sets).
An even more general approach is
Code:
selectOption = tolower(selectOption);
where tolower() is declared in the standard header file <ctype.h>. The difference, however, is that it converts all uppercase letters to lowercase (not just 'Q'), and it also works in non-english speaking locales (assuming system is set up appropriately). Optionally, since tolower() returns an int not a char, this can be assisted with a type conversion
Code:
selectOption = (char)tolower(selectOption);
which will stop some compilers warning (since truncating from int to char loses information). However, even without the type conversion the code is technically correct.