company is a single char, not a string: do you mean that? But the program will work as long as you only enter single character company names.

Entering "foo" drops the program into an infinite loop; this will be because of the nature of formatted input. The 'f' will be read into company, but thereafter cin seems to get stuck; the next "cin>>company" doesn't change company which permanently remains at 'f', and of course 'o' isn't a valid number so that won't convert it, and maybe cin is in an error state which has to be cleared before it'll continue. Not sure if this is expected behaviour. Experienced programmers quickly drop cin and scanf in favour of more flexible inputs: fgets() reads a complete line from the user and you can then parse it yourself to extract whatever information you want (and you can still do formatted input with strstream and sscanf if you want).

subCharge undeclared identifier: because you declared it subcharge and C++ is case sensitive.

Entering a,23,b,14,s displays

Total number of registrants: 28
Total charge: 3330.00
Average charge per person: 118.93

That's wrong: registrant count should be 37. Ah:
	registrantCount += registrantCount;
(By the way, when posting code, please use code blocks. It preserves the formatting and makes it easier to read.)

You need a second variable for the total number of registrants. This line simply doubles what is in registrantCount, which is why the result is 28 (=14+14). Fixed the following lines:
	int registrantCount = 0, totalRegistrants=0;
	totalRegistrants += registrantCount;
	averageCharge = totalCharge/totalRegistrants;
	cout << "Total number of registrants: " << totalRegistrants << endl;
Now the output is
Total number of registrants: 37
Total charge: 3330.00
Average charge per person: 90.00

Haven't checked total and average charges but that's probably correct now.