C语言练习题:移动字母(指针)

请用程序实现

将指定字符串的前三个字符移到最后.

函数定义

void shift (char *str);

参数说明

  • str, 字符串指针, 表示需要进行移动的字符串

示例 1

参数

str = "I am a student. I like programming."

输出

m a student. I like programming.I a

示例 2

参数

str = "Hello, World!"

输出

lo, World!Hel
#include 
void shift (char *str) {
    // TODO 请在此处编写代码,完成题目要求
    char str2[3];
    int i,j;    
    for(i=0;i<3;i++)
    {
        str2[i]=str[i];
    }
    //将前三个字符保存
    for(i=3;str[i]!='\0';i++)
    {
        str[i-3]=str[i];
    }
    //将字符串前移三位
    for(j=i-3,i=0;i<3;i++)
    {
        str[j++]=str2[i];
    }
}

int main () {
    char str[100] = "I am a student. I like programming.";
    shift(str);
    printf("%s", str);
    return 0;
}

你可能感兴趣的:(c语言,蓝桥杯,开发语言)