以下程序的功能为:
将字符数组a的所有字符传送到字符数组b中,要求每传送3个字符后再存放一个空格,
例如字符串a为“abcdef”,则字符串b为“abc def g”。
#include <stdio.h>
main()
{ int i,k=0; char a[80],b[80],*p;
p=a;
gets(p);
while(*p)//这里的i,k要注意看一看
{ for (i=1; (i-1)%3!=0||i-1==0 ;p++,k++,i++)
{
if ( (i-1)%3==0 ) { b[k]=' '; k++;}
b[k]=*p;
}
}
b[k]='\0';
puts(b);
}
用指针做游标
(这个更简单一点,前面的解法要复杂不好理解)
#include "stdio.h"
int main(){
char a[101],b[200]={0},*p,*q,t=0;
gets(a);
p=a;
q=b;
while (*p) {
*q=*p;
t++;
if (t==3){
t=0;
q++;
*q=' ';
}
p++;
q++;
}
puts(b);
}