#include <stdio.h>
// PAT 1066 图像过滤 
int is_in(int A,int B,int N){//判断是否在区间内  
    if (A <= N && N <= B) return 1;
    else return 0; 
} 

int main(){
    int M,N;//分辨率 0-500  思路:M行N列 双重循环 N列为内层循环 
    int a[510][510];
    int A,B;//灰度区间 A B 0-255
    int X;  //指定替换灰度值 

    scanf("%d%d%d%d%d",&M,&N,&A,&B,&X);
    
    for(int i = 0;i < M;i++)
        for(int j = 0;j < N;j++){
            scanf("%d",&a[i][j]);
        } 
    //完成输入
    
    //开始过滤
    for(int i = 0;i < M;i++)
        for(int j = 0;j < N;j++){
            if(is_in(A,B,a[i][j])) a[i][j]={X};
        }  
    //输出
    for(int i = 0;i < M;i++){ 
        for(int j = 0;j < N;j++){
            printf("%03d",a[i][j]);
            if(j != N-1) printf(" ");//空格处理 
        }
        printf("\n");
    }       
    return 0;
} 

//写一个比较全的进制转换函数-----未完成 
#include <stdio.h>
//D进制转换后 (比如10-2进制) 结果可能会很大 需要很长的字符串来存 
#include <string.h>
//一个D进制数,到M进制
//D%M=D->M 的末位数//-> 转到
//D/M=D->M   去掉一个末位数剩下的M
char AFTF[]={'0'}; //After Transform 

void printf_TF(int num, int r){  

    int len =0;

    while(num){
        AFTF[len++] = num%r;  //D%M=D->M 的末位数 依次赋值给 AFTF[] 
        num/=r;             //D/M=D->M   去掉一个末位数剩下的M      
    }

    for(int i = 0;i < len; i++){
        printf("%c",AFTF[i]);
    }

}
int main(){

    int num,r;

    scanf("%d %d",&num,&r);

    printf_TF(num,r);


    return 0;
}

挖个坑,慢慢填..

- 阅读剩余部分 -

#include <stdio.h>
#include <string.h>
int main(){
    char a[]={"Strlen1"},b[]={"Strlen2"},c[]={"\0"}; 

    puts(a);                    // 1

    gets(c);                    // 2

    strcat(a,b);
        printf("Now a = ");     // 3
        puts(a);
        printf("\n");

    strcpy(b,c);                // 4
        printf("Now b = ");
        puts(b);
        printf("\n");

    printf("%d\n",strcmp(a,b)); // 5

    printf("%d\n",strlen(c));   // 6

    strlwr(a);
        printf("Now a =");      // 7
        puts(a);
        printf("\n");

    strupr(a);
        printf("Now a =");      // 8
        puts(a);
        printf("\n");
}