从键盘输入一个字符串,字符串的每两个字符之间都插入一个空格

从键盘输入一个字符串,然后在字符串的每两个字符之间都插入一个空格,如原串为abcd,则新串为a b c d。
//要求用函数和指针来完成。写出主函数。
//算法提示:
//1)利用循环for(i=strlen(p);i>0;i--)遍历从最后一个字符开始至第二个字符;
//2)下标为i位置上的字符,应存储到下标为2*i位置上,即*(p+2*i)=*(p+i);
//3)对于插入空格的位置,从后面开始,下标规律为2*i-1,即*(p+2*i-1)=' '。

#include <stdio.h>
#include <string.h>
void main()
{

}
void cr(char *p)   //定义函数,插入空格
{  int i;
   for(i=strlen(p);i>0;i--)
   {  *(p+2*i)=*(p+i); 
      *(p+2*i-1)=' ';}
}


 

 

#include <stdio.h>
#include <string.h>
void cr(char *p);
void main()
{
    char s[10];
	printf("输入字符串:");
	gets(s);
    cr(s);
	printf("%s",s);

}
void cr(char *p)   //定义函数,插入空格
{  int i;
   for(i=strlen(p);i>0;i--)
   {  *(p+2*i)=*(p+i);
      *(p+2*i-1)=' ';}
}

 

写程序遇到什么问题了?能否把问题补充一下!

您的问题已经有小伙伴解答了,请点击【采纳】按钮,采纳帮您提供解决思路的答案,给回答的人一些鼓励哦~~

ps:开通问答VIP,享受5次/月 有问必答服务,了解详情↓↓↓

【电脑端】戳>>>  https://vip.csdn.net/askvip?utm_source=1146287632
【APP 】  戳>>>  https://mall.csdn.net/item/52471?utm_source=1146287632