C程序如何能实现下面的功能?
我是一个C程序初学者,有问题了!请高手帮忙下啊?我是一个C程序初学者,有问题了!请高手帮下忙啊?
摆脱了,希望能够得到高手的帮助啊?有可能的话发送到邮箱啊!感谢!

课题一:字符串处理
用一个字符数组保存着一个英文句子,要求
(1) 删除该英文句子的前导空格,后导空格.并删除句子中多余的空格(单词之间只留一个空格);
(2) 统计该句子中,单词出现的频率;
课题二:建立N阶方阵,N的值是多少,每行上打印几个数:
螺旋方阵,当N的值是4时,方阵如下图:
1 2 3 4
12 13 14 5
11 16 15 6
10 9 8 7
课题三:蛇形方阵,当N的值是4时,方阵如下图:
1 2 6 7
3 5 8 13
4 9 12 14
10 11 15 16
课题四:字母的集中排列方法,既从键盘上随机的输入一个字符串,要求串中各个字符按照ASCII值递增1的顺序排列,然后根据键盘上输入的数字进行输出选择。若从键盘上输入:ABC(回车),则
Enter choice:1
Result:CBA
Enter choice:2
Result:ABCCBA
Enter choice:3
Result:ACBBCA
Enter choice:4 注:从键盘上输入一个数字N,按照ASCII值顺序输入串中最后一个字符后的N个字符
Enter Number:3
Result:DEF
Enter choice:5
Result:65+66+67=198 注:输出串中的各个字符的ASCII值的和
Enter choice:6 注:输入1~5之外的其他数字都做这样的选择。
Your choice is invalid