What am I doing wrong? My code keeps in loop and n goes minus. It was supposed to return 0; at 0.Also whatever I do it starts with 3-2-1-0 even I type "2" it still keeps doing it 3-2-1-0
 #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    
    int main()
    {
        static const char PSWRD[]="1234";
        char p[6];
        int n=3, y;
    
        printf("Hos geldiniz");
    
    
        do{
            printf("\n\nOgrenci_ID:Elif");
            fflush(stdout);
    
            printf("\nSifre:");
            scanf("%s", &p);
            fflush(stdout);
    
           
            y=strcmp(p, PSWRD);
    
            if(y==0){
                printf("\nGiris Basarili"); `//succesfull login`
                return 0;
            }else {
                printf("Yanlis Sifre, tekrar deneyiniz", 3-n); //wrong password try again
                printf("\nKalan hakkiniz ");
                printf("%d\n", n);
                getchar();
                n--;}
    
            if(n<1){
                printf("\nHesabiniz bloke oldu"); 
                    return 0;
// that means you use all your chance and now you're blocked but my code aint stop here and n goes minus
            }
    // I am not exactly sure about "3" 
    //Also what ever i do it starts with 3-2-1-0 even i type "2" it's still keep doing it 3-2-1-0
        }while (n<=3);
        return 0;
    }
 
     
     
     
    