您的位置:首页 > 职场人生

【字符串】面试题之奇偶字符串分离

2015-04-02 17:53 225 查看
 题目:有一个字符串”1a2b3d4z”;

 要求写一个函数实现如下功能,

 功能1:把偶数位字符挑选出来,组成一个字符串1。valude;20分

 功能2:把奇数位字符挑选出来,组成一个字符串2,valude 20
 功能3:把字符串1和字符串2,通过函数参数,传送给main,并打印。

//头文件
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <assert.h>

//奇偶字符串分离函数
int divOddEven(const char *scr, char *odd, char *even)
{
int i=0;//vs2008编辑器需要放前面
assert(scr!=NULL);
while(scr[i]!='\0')
{
//序号i是从0开始的0,1,2……,而判断奇偶应该1,2,3,4……
if ((i+1)%2!=0)
{
*odd++=scr[i];
}
else
{
*even++=scr[i];
}
i++;
}
*odd='\0';
*even='\0';
return 0;
}

//主函数及测试用例
int main()
{
char s[] = "1a2b3d4z";
char buf1[50];
char buf2[50];
divOddEven(s,buf1,buf2);
printf("原字符串:%s\n奇数串: %s\n偶数串:%s\n",s,buf1,buf2);
return 0;
}

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  字符串 c 面试