1、如在在word表格中打钩

符号->其他符号->字体(wingdings2)

20140604 word表格中打钩 循环右移-LMLPHP

2、循环右移

方法1:

#include<stdio.h>
void move(char *s) //循环右移1位
{
if(s==NULL)
return;
char *p=s,*q=s;
char temp;
while(*p!='\0')
{
p++;
}
p--;
q=p-;
temp=*p;
while(p!=s)
{
*p=*q;
q--;
p--;
}
*s=temp;
}
void LoopMove( char *pStr,int steps)//循环右移steps位
{
int i=;
while(i<steps)
{
move(pStr);
i++;
}
}
void main()
{
char str[]="abcdef";
//char *str="abcdef"; 这里“abcdef”是常量,不能通过str指针修改常量值,这种写法错误
LoopMove(str,);
printf("%s",str);
}

方法2:strcpy不能人为控制拷贝的字节数,只是以‘\0’来

#include<stdio.h>
#include<string.h>
#include<malloc.h>
void LoopMove(char *pStr,int steps)
{
int len=strlen(pStr);
int n=len-steps;
char *temp=(char *)malloc(sizeof(char *));
strcpy(temp,pStr+n);
strcpy(temp+steps,pStr);
*(temp+len)='\0';
strcpy(pStr,temp);
} void main()
{
char str[]="abcdef";
LoopMove(str,);
printf("%s",str);
}

方法3:memcpy可以控制复制的字节数

#include<stdio.h>
#include<string.h>
#include<malloc.h>
void LoopMove(char *pStr,int steps)
{
int len=strlen(pStr);
int n=len-steps;
char *temp=(char *)malloc(sizeof(char *));
memcpy(temp,pStr+n,steps);//
memcpy(pStr+steps,pStr+steps,n);
memcpy(pStr,temp,steps);
} void main()
{
char str[]="abcdef";
LoopMove(str,);
printf("%s",str);
}
05-11 21:41