阿里巴巴|C语言-字符串间隔提取字符

阿里巴巴|C语言-字符串间隔提取字符


①命令行
#include< stdio.h>
#include< string.h>
~
②定义函数
void fun(char*s0char*s1char*s2char*s3)
/*从s0中依次提取字符存入s1s2s3中 ,
也可以理解为s1间隔3个字符从s0中提取 。 */
~
③定义变量与赋初值
/*指针变量 , 用于定位索引 。 */
{char*p1=s0*p2=s0+1*p=s0+2;
/*索引变量 , 定义下标*/
int i=0j=0k=0;
/*索引范围 , 定义下标移动范围*/
int len=strlen(s0);

④循环函数
/*指针移动范围<(起始地址+偏移量)*/
while(p1<s0+len||p2<s0+len||p3<s0+len)
/*3个条件语句 , 分别将3个索引指针所指的值储存起来 。 */
{if(p1<s0+len)
{s1[i++
=*p1;
/*储存*/
p1=p1+3;
/*间隔*/
if(p2<s0+len)
{s2[i++
=*p2;
/*储存*/
p2=p2+3;
/*间隔*/
if(p3<s0+len)
{s3[i++
=*p3;
/*储存*/
p3=p3+3;
/*间隔*/

/*指定字符串结尾 , 搭配字符串输出函数puts*/
s1[i
='\\0';
s2[j
='\\0';
s3[k
='\\0';
/*或者s3[k
=0 , '\\0'的ASCLL码为0 。 */

⑤主函数
viod main()
{char s0[30
s1[10
s2[10
s3[10
;
printf(\"输入字符串\\");
gets(s0);
fun(s0s1s2s3);
puts(s1);puts(s2);puts(s3);
/*字符串输出函数puts必须指定字符串结束标志'\\0' 。 */
【阿里巴巴|C语言-字符串间隔提取字符】