华为2012编程大赛题目(2)
2013-07-28 05:40
281 查看
现有一串字符串,请对字符串中的数字字符按照升序排序,其他非数字字符存储位置保持不变,将结果保存至output数组中。 【注:字母可能包含大写、小写字母、数字以及控制字符】 要求实现函数my_sort(char input[],char output[]) 例子: input:a3vues4sdf2kjk9df0v output:a0vues2sdf3kjk4df9v
如果使用C++的话调用排序函数 会简化代码
并且我认为我的代码冗余
#include<cstdio> #include<cstring> using namespace std; char input[100],output[100]; int pos[100]; void my_sort(char input[],char output[]) { int len = strlen(input); int j = 0; int i; for(i=1;i<len;i++) if('0'<=input[i]&&input[i]<='9') { pos[j] = i; output[j++] = input[i]; } char temp; for(i=1;i<j;i++) for(int k=0;k<j-i;k++) { if(output[k]>output[k+1]) { temp = output[k]; output[k] = output[k+1]; output[k+1] =temp; } } for(i=0;i<j;i++) { input[pos[i]] = output[i]; } strcpy(output,input); } int main() { freopen("1.txt","r",stdin); gets(input); my_sort(input,output); puts(output); return 0; }
相关文章推荐
- 华为2012编程大赛题目(1)
- 华为2012第四届编程大赛初赛题目(4-22下午)
- 2013华为第五届编程大赛 成都初赛题目和解答
- 2013华为杯编程大赛成都第三组试题--------题目 A: 路灯统计
- 【大坑特坑】第六届华为“创新杯”编程大赛初赛题目(第五场)
- 第五届华为“创新杯”编程大赛初赛题目(第二场)
- 华为第六届创新编程大赛第一轮 电话本题目
- 华为第四届编程大赛题目
- 2012年华为软件校园招聘编程测验(又名:2012华为创新杯编程大赛)软件Java语言类原题与解答
- 2012 华为编程比赛 解决方案
- 华为的编程大赛题
- 蓝桥杯软件大赛题目集锦之编程大题
- 2010华为软件设计大赛初级题目;
- 2012华为编程之就餐调查
- 2005年Goole编程大赛初赛题目二(750分)
- CSDN英雄会——第五届在线编程大赛月赛指定题目:反向互补子串
- 2013华为杯编程大赛成都第三组试题及答案
- 华为编程大赛——公交站寻址
- 第二届“顶嵌杯”全国嵌入式系统C语言编程大赛初赛题目及源代码
- 华为软件校园招聘编程上机题目1