#include <stdio.h>
#include <string.h>
#define N 10
char *fun(char *str,int m){
int i,j;
for(j=0;j<m;j++){//左移几次。就循环几次
for(i=0;;i++){//数组下标
static char temp = 0;
if(i==0){ //每次循环先把第一个元素存到临时变量
temp=str[i];
}
if(str[i+1]!='\0'){ //第二个元素开始往左边移动一位,到'\0'为止
str[i]=str[i+1];
}
else{
str[i]=temp; //循环完了以后,再把第一个元素放到str最后
break;
}
}
}
return str;
}
void main(){
char s[N];
int m;
printf("Please input string:");
scanf("%s",s);
printf("\nEnter m:");
scanf("%d",&m);
if(m > strlen(s)){
printf("\nData error.\n");
return;
}
printf("Result is:%s\n",fun(s,m));
}
15年18题:循环左移
最新推荐文章于 2024-09-20 14:41:15 发布