冒泡法解决排列大小问题

请教一道基础的C语言题目:

输入ASCII字符,次数未知,统计输入的字符总数,有哪些字符输入了,每个字符的输入次数,每个字符占总输入字符数的比例,把字符按比例大小从大到小排序。

比如输入了123456asd@
然后输出:
输入字符有:123456asd@
输入字符总数为:10
1字符输入次数为1
1字符占总输入的次数的1%
……
……
(就是每个字符输入的次数和所占比例)
………
………
(最后输出一行每个字符输入的比例从大到小排列,比如这个就是
1=2=3……)
谢谢!

http://blog.csdn.net/hans_1990/article/details/27341803
http://www.cnblogs.com/kkun/archive/2011/11/23/2260280.html
两个程序你组合下。