You'll have to create an insert trigger which will build your key from the letter and probably a sequence.
Have a look at http://www.orafaq.com/wiki/Sequence for how to create sequences ( if you don't already know ).
As for the trigger, you'll probably want to do something like
CREATE OR REPLACE TRIGGER tablename_generatekey
BEFORE INSERT ON tablename
FOR EACH ROW
DECLARE
seq number;
BEGIN
select sequence_name.nextval
into seq
from dual;
:new.primary_key := 'C' || seq;
END;
/
The idea being - when inserting a row - execute this code. The code retrieves the next value from a sequence and then uses that to generate the new value of the primary key ( :new refers to the record going to the database, :old is the record passed in ).
Sorry - I haven't had chance to check if the syntax is correct - but I hope you get the idea.
( More info on triggers at http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14251/adfns_triggers.htm#ADFNS012 ).