您的位置:首页 > 其它

将字符串奇偶位的字符分离保存

2018-01-28 16:55 253 查看

一、举个例子:

有一个字符串”1a2b3d4z”,;

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

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

功能2:把奇数位字符挑选出来,组成一个字符串2,valude 20

功能3:把字符串1和字符串2,通过函数参数,传送给main,并打印。

功能4:主函数能测试通过。

二、程序实现:

#include<stdio.h>
#include<string.h>
#include<stdlib.h>

int getStr1Str2(char *souce, char *buf1, char *buf2)
{
int ret =0;
int i,j=0,a=0;
char *p=souce;

if(souce==NULL||buf1==NULL||buf2==NULL)
{
ret=-1;
printf("func getStr1Str2  err:(souce==NULL||buf1==NULL||buf2==NULL):ret=%d\n ",ret);
return ret ;
}
for(i=0;p[i]!='\0';i++)
{
if(i%2==0)
{
buf2[j++]=p[i];
}
else if (i%2==1)
{
buf1[a++]=p[i];
}
}

buf2[j]='\0';
buf1[a]='\0';
return 0;
}

//主调函数
void main()
{
int ret =0;
char buf[]="1a2b3d4z";
char buf1[100];//必须分配内存
char buf2[100];
ret =getStr1Str2(buf, buf1, buf2);
if(ret!=0)
{
printf("func err: ret=%d\n",ret);
}
printf("buf1=%s\n",buf1);
printf("buf2=%s\n",buf2);

system("pause");
}


三、测试结果:

<1>、buf[]=”1a2b3d4z”;数字与字母分离



<2>、buf[]=”abababababababababab”;ab分离

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐