C语言抽取字符串奇数和偶数位字符

#include "stdio.h"
#include "stdlib.h"
#include "string.h"
/*
2、有一个字符串”1a2b3d4z”,;
要求写一个函数实现如下功能,
功能1:把偶数位字符挑选出来,组成一个字符串1。valude;20分
功能2:把奇数位字符挑选出来,组成一个字符串2,valude 20
功能3:把字符串1和字符串2,通过函数参数,传送给main,并打印。
功能4:主函数能测试通过。
int getStr1Str2(char *souce, char *buf1, char *buf2);
*/
int getStr1Str2(char *souce, char *buf1, char *buf2)
{
char *str = souce;
char *out1 = buf1;
char *out2 = buf2;
int ret = 0;
int len = strlen(str);
//异常处理
if (!souce || !buf1 || !buf2)
{
ret = -1;
printf("func getStr1Str2(char *souce, char *buf1, char *buf2)err:%d,pamameter is null.", ret);
return ret;
}
//正确运行
else
{
ret = 1;
//偶数
for (int i = 0; i < len; i+=2)
{
*out2++ = str[i];
}
//奇数
for (int i = 1; i < len; i+=2)
{
*out1++ = str[i];
}
}
return ret;
}
int main()
{
int vt = 0; //主函数返回值 1:通过测试,-1:参数为NULL
char str[100] = "1a2b3d4z";
char value1[50] = { 0 }; //value1:奇数
char value2[50] = { 0 }; //value2:偶数
vt = getStr1Str2(str, value1, value2);
if (vt == 1)
{
printf("odd:%s\neven:%s\n", value1, value2);
}
system("pause");
return 0;
}

你可能感兴趣的:(C语言)