这个用c++怎么写啊,请帮我一下

我是真的搞不懂怎么把判断大写字母和把第二个字母替换成数字

将电话号码编码到一个句子中,然后通过解码找到电话号码。以大写字母开头的单词,将电话号码的下一个数字替换成单词的第二个字母,在元音字母的下一个字母替换成数字,大写字母和元音字母同时出现,把单词最后一个字母替换成数字,跳过一个和两个字母的单词. 若一个单词出现了大写字母和元音字母则用最后一个出现的为例,programmi5g,使用在最后出现的i,一个单词全是大写则是单词的第一个大写字母
输入
This is a REALLY fun programming Assignment,it is great to Program Now i know how to use an array.
电话号码:980 564 1253
输出
T9is is a R8ALLY fu0 Programmi5g A6signment it is gre4t to program,No1 I kn2w ho5 to us3 an array

按你的规则,你例子输出就用问题。

或者说规则有很多冲突,而且没有明确冲突处理机制。

其它的其实就是

  1. 用空格分隔出多个单词
  2. 排除掉(标记)单词中字母数量小于等于2的部分
  3. 按规则依次处理单词
  4. 重新输出

img


这个,大写字母和元音字母同时出现了,为什么替换的是倒数第二个字符?
题目说的很奇怪啊