scanf后面的回车会被gets接受,所以必须放个getchar()吃回车
#include<stdio.h>
int main()
{
    int n = 0 , m = 0,l = 0, r = 0, i = 0;
    char arr[100] = {0}, c1 = 0, c2 = 0;
    scanf("%d%d",&n,&m);
    getchar();    //吃掉前面scanf的回车
    gets(arr);
    while(m--)
    {
        scanf("%d %d %c %c",&l,&r,&c1,&c2);
        for(i = l -1 ; i <= r - 1; i++)
        {
            if(arr[i] == c1)
                arr[i] = c2;
        }
    }
    printf("%s\n",arr);
    return 0;
}