华为2012第四届编程大赛初赛题目(4-22下午)

来源:互联网 发布:centos共享文件夹 编辑:程序博客网 时间:2024/05/16 08:30
(1),现有一串字符串,请找出其中的大写字母并顺序保存至output数组中。
【注:字母可能包含大写、小写字母、数字以及控制字符】
要求实现函数my_string(char input[],char output[])

例子:
input:3dfD93dafkIFIkdLDkjLKD
output:DIFILDLKD

(2),现有一串字符串,请对字符串中的数字字符按照升序排序,其他非数字字符存储位置保持不变,将结果保存至output数组中。
【注:字母可能包含大写、小写字母、数字以及控制字符】
要求实现函数my_sort(char input[],char output[])

例子:
input:a3vues4sdf2kjk9df0v
output:a0vues2sdf3kjk4df9v

(3),字符串匹配问题,给定一串字符串,按照指定规则对齐进行匹配,并将匹配结果保存至output数组中,多个匹配项用空格间隔,最后一个不需要空格。
要求
1、匹配规则中包含通配符?和*。?表示匹配任意一个字符,*表示匹配任意多个字符串。
2、匹配规则要求匹配最大的字符子串,例如abbdd,规则a?d,匹配abbdd而非abbd,即最大匹配子串。
3、匹配后的输入串不再进行匹配,从当前匹配后的字符串开始重新匹配其它字符串。

要求实现函数my_find(char input[],char rule[],char output[])

例子:
input:abcadefg
rule:a?c
output:abc

input:newsadfanewfdadsf
rule:new
output:new new

intput:breakfastfood
rule:f*d
output:fastfood